如果数字可以被 2 整除,我试图将值 (x) 附加到列表,然后打印出该列表。看起来很简单。以下运行但返回 None:
x = []
def test():
while x in range(0,100):
if x % 2 == 0:
x.append()
print(test())
请您参考如下方法:
使用
for迭代范围 - 而不是while。您对
x的含义不明确 - 既作为迭代变量又作为列表。您需要将值传递给
append。您需要返回一个值,以便通过 print 语句打印它 - 否则
None是默认值。
固定:
x = []
def test():
for i in range(0,100):
if i % 2 == 0:
x.append(i)
return x
print(test())
其他说明:
您只能使用一次。下一次调用
test将返回两倍大小的列表,因为x是一个全局变量。我相信这是无意的,可以通过将x = []放入函数中来解决。像
[x for x in range(100) if x % 2 == 0]这样的列表理解会好得多。
