学习python ..请轻松一点! :)
让我说我做了如下命令:
In [10]: a = {"a":"a", "b":"b"}
In [11]: a
Out[11]: {'a': 'a', 'b': 'b'}
In [12]: b = a
In [13]: b
Out[13]: {'a': 'a', 'b': 'b'}
In [14]: c = b
现在,a
,b
和c
都指向相同的字典,所以如果我这样做:
In [15]: c.update({"c":"c"})
然后,可以理解,所有参考文献都会更新:
In [16]: c
Out[16]: {'a': 'a', 'b': 'b', 'c': 'c'}
In [17]: b
Out[17]: {'a': 'a', 'b': 'b', 'c': 'c'}
In [18]: a
Out[18]: {'a': 'a', 'b': 'b', 'c': 'c'}
但同样的事情在以下情况下不起作用:
In [1]: a = 3
In [2]: b = a
In [3]: c = []
In [4]: c.append(b)
In [5]: a
Out[5]: 3
In [6]: b
Out[6]: 3
In [7]: c
Out[7]: [3]
In [8]: a = 5
In [9]: b
Out[9]: 3 # this should have printed 5 and not 3 as per my understanding
我对python如何在内部放置引用感到困惑!它不适用于int
,str
类型还是有特殊情况?