Pyhton新手。今天看教程的時候?qū)嶒灹巳缦麓a:old='abc'old.replace('a','A')printold這里old并沒有被替換,這個我可以理解,因為replace方法返回了一個新的對象,old仍指向原對象。所以打印的仍然是abc替換成:old='abc'new=old.replace('a','A')printnew即可。結(jié)果就是Abc了。但是,又想到了這個問題,代碼如下:stu1='Tom'stu2='John'classMates=[stu1,stu2]printclassMatesstu2='Marry'printclassMates結(jié)果卻是:['Tom','John']['Tom','John']而不是預期的:['Tom','John']['Tom','Marry']如果再對list賦值一次:classMates=[stu1,stu2]就可以得到想要的效果。所以想問的是list創(chuàng)建的時候指向的是stu1和stu2的位置么,為什么stu2中的內(nèi)容變了list中的不會變呢?還是像最開始的那個例子一樣,產(chǎn)生了一個新的list?現(xiàn)在的classMates沒有指向更改后的list而是還是指向原來的list?謝謝!
Python list內(nèi)容的改變問題
九州編程
2019-04-14 10:24:37