为什么我的列表以这种方式打印输出?

时间:2014-08-26 01:44:02

标签: python python-3.x

sum = []

for count in range(1000):
    if count % 3 == 0:
        sum.append(count)
        print (sum)

上面的代码打印所有可被3整除的数字。输出为:

[0]
[0, 3]
[0, 3, 6]
[0, 3, 6, 9]
...

如何在不重复每个数字的情况下将其作为所有数字的一个列表(如[0,3,6,9,12,15,...])?

2 个答案:

答案 0 :(得分:2)

将print(sum)从for循环的缩进中删除

sum = []

for count in range(1000):
    if count % 3 == 0:
        sum.append(count)

print (sum)

答案 1 :(得分:0)

list comp将执行您想要的操作,并避免使用sum等变量名称来隐藏builtin名称:

summed = [count for count in range(1000) if count % 3 == 0]