一尘不染

使用循环将值分配给列表中的变量

python

var_list = [one, two, three]
num = 1
for var in var_list:
    var = num
    num += 1

上面给我一个错误,即“一个”不存在。不能以这种方式分配吗?我想为列表中的每个var分配一个递增编号。


阅读 130

收藏
2020-12-20

共1个答案

一尘不染

Python变量是值的 名称 。他们并没有真正“包含”这些价值观。

for var in var_list:导致“ var”成为列表中每个元素的名称。在循环内,var = num它不会影响列表:相反,它将导致var不再是list元素的名称,而是开始成为num当前名称的名称。

同样,当你创建列表,如果onetwothree不是已经为值的名字,那么你可以不使用它们一样,因为你问到创建具有这些名称(进而导致值的列表var_list是该列表的名称)。请注意,列表实际上也没有包含任何值:它引用或共享它们。

2020-12-20