Skip to main content
 首页 » 编程设计

python之在python中根据字典映射赋值

2025年05月04日18lvdongjie

我想知道是否有人可以向我解释一下:

In [400]: poz0='' 
 
In [401]: poz1='' 
 
In [402]: poz={0:poz0, 1:poz1} 
 
In [403]: for i in range(1): 
   .....:     poz[i]='some value '+str(i) 
   .....: 
 
In [404]: 
 
In [405]: poz[0] 
Out[405]: 'some value 0' 
 
In [406]: poz0 
Out[406]: '' 

我期待 poz0 == poz[0],与 poz1 相同,但事实并非如此。谁能解释一下为什么?

谢谢

请您参考如下方法:

您将 poz[0] 重新分配给了一个不同的对象,即 'some value '+str(0) 的值。赋值运算符 = 不会修改 poz[0] 的值,但会更改 dict 中的绑定(bind)。