|
发表于 2020-7-16 10:45:01
|
显示全部楼层
for x in list:
>>>x = "non"
每次循环的时候,开始x只是和list里面的一个位置指向了相同的东西,稍后x又指向了"non"。而list中原来的位置依旧指向原来的对象,list一直作为右值使用而已。
在C里面可以这样理解:
const char* list[] = {"apple9927", "jason"};
const char* x;
int i;
for(int i=0; i<2; i++)
{
x = list[i];
x = "non";
}
没有任何操作修改了list(list没有作为左值使用);
你想修改list的话可以使用索引:
w = ["int", "str"]
for i in range(len(w)):
w[i] = "none"
print w
|
|