For 循环只返回最后一个值

时间:2021-01-02 18:25:56

标签: python loops for-loop

我正在 python 上尝试这段代码:

N = 5

for n in xrange (0, N):
    a = [10 + n]
    
print(a[0])

代码返回 14,当我尝试 print(a[1]) 时出现列表索引错误。我想要的是能够查看a[0]a[1] ... a[n]。当我写 a=[10 + n for n in xrange (0,N)] 时它有效,但我不明白其中的区别。任何人都可以帮助如何使第一种方法起作用吗?

1 个答案:

答案 0 :(得分:3)

您没有附加到列表中;您正在反复重新定义 a 所指的单元素列表。

a = []
for n in range(N):
    a.append(10 + n)