【发布时间】:2022-11-30 06:16:25
【问题描述】:
我希望此代码引用内部带有循环变量的列表,而不是使用初始化值:
i = 1
list = [i,i+1,i+2]
for i in range(3):
print(list[0])
我预计输出是:
0
1
2
输出是:
1
1
1
我试过i = None,但(当然)出现了一个错误。
我尝试在循环中使用占位符来引用:
x = 1
list = [x,x+1,x+2]
for i in range(3):
x = i
print(list[0])
我是 Python 的新手,所以我不是很了解,因此我问了。我该如何解决这个问题?
【问题讨论】:
-
print(list[i]) -
@flakes 我提供的示例修改了变量。真实情况是有很多不同的列表可供参考。我认为该解决方案仅适用于提供的场景?
-
您似乎认为更改
i的值将更改存储在list[0]的值。list和i没有关系;i仅用作表达产生要放入列表中的值。 -
那是对的。我怎样才能使价值发生变化?我是否必须在循环内不断地重新声明变量?
标签: python