Skip to main content
 首页 » 编程设计

python之打印格式化的值集列表

2025年05月04日1352php

我正在使用 set.difference 比较两个列表 我希望不在列表 a 中但在列表 b 中的每个值都打印在自己的行上,但是,集合不允许我。代码和输出如下。

import pprint 
 
a = [1,2,3,5,6,8,9,10] 
b = [13,452,3,4,5,6,7,8,9,10,11] 
c = [] 
difference = set(b).difference(a) 
c.append(difference) 
#print c 
for item in c: 
    pprint.pprint (str(item)) 

我得到的输出是这样的:

'set([4, 7, 11, 13, 452])' 
>>>  

我想要的输出是这样的:

>>> 
4 
7 
11 
13 
452 
>>> 

请您参考如下方法:

我相信您犯了一个错误,您将difference(一个列表)附加到c(也是一个列表)。因此,当您循环遍历包含列表的 c 时,您将打印出整个 列表。而不是该列表的个人值。

在我下面的示例中,您直接将差异分配给 c,因此 c 不包含包含您的值的列表,但 c 是包含您的值的列表。

import pprint 
 
a = [1,2,3,5,6,8,9,10] 
b = [13,452,3,4,5,6,7,8,9,10,11] 
c = set(b).difference(a) 
 
for item in c: 
    pprint.pprint (str(item))