在下面的程序中,正如我们所知道的,在Python中,String是不可变的,如果我们将值重新赋值给python中的字符串,则会创建新的变量(引用)。用于循环迭代的字符串变量
S = "Nagu"
print (id (S))
S = "Santh"
print (id (S))
输出:
43578232
43578288
在正在进行的列表名称的下面程序遍历,
names = ["nagu","santh"]
for name in names:
name = "K." + name
print("{0} : {1}".format(id(name),name))
输出:
43579688 : K.nagu
43579688 : K.santh
中的名称变量循环获得不同的价值e从列表中不更改id如何可能?
什么是问题?我没看到它。请提供您的愿望解决方案 – Gahan
@Gahan,问题是“for循环中的'name'变量从列表*中获得了不同的值*而不更改id *”以及它如何可能? – zhenguoli
坦白地说,我不明白为什么它应该为您提供相同的ID,想到其他语言中的列表为第一个字符串“分配”一个节点,并且为第二个字符串分配一个节点,没有理由使用相同的ID无论如何 – LiorA