我想在for循环中使用列表的最后一个元素来生成新元素。这是我的问题的玩具示例:
a = [1]
a += [a[-1]+i for i in range(10)]
但它只考虑1作为最后一个元素,并且不通过for循环来查找新的最后一个元素。你能告诉我如何解决这个问题吗?
答案 0 :(得分:1)
我运行代码并得到以下答案:
In [2]: a = [1]
In [3]: a += [a[-1]+i for i in range(1,10)]
In [4]: a
Out[4]: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
答案 1 :(得分:0)
试试这个:
a = [1]
for i in range(10):
a.append(a[-1]+i)
print(a)
使用列表推导不会在每次新迭代时获取数组的新最后一个值,但使用正常的for
循环将会。