一个关于Python变量赋值的小疑问,该如何处理
一个关于Python变量赋值的小疑问
首先有
a = [ 'a ', 'b ', 'c ', 'd ']
b = a
书上说这个时候b 不是a 的一个拷贝而是1个参考
执行
del a[0]后
a,b的值都为 [ 'b ', 'c ', 'd ']
这个时候如果再执行
a = [ '123 ']
为什么现在b的值不是[ '123 ']而是
[ 'b ', 'c ', 'd ']呢??
------解决方案--------------------
a = [ 'a ', 'b ', 'c ', 'd ']
b = a
b 和 a 引用了相同的东西
b 引用的是 [ 'a ', 'b ', 'c ', 'd ']
不是 a
a = [ '123 ']
a 引用了另外一个东西
b 还引用着原来的东西
首先有
a = [ 'a ', 'b ', 'c ', 'd ']
b = a
书上说这个时候b 不是a 的一个拷贝而是1个参考
执行
del a[0]后
a,b的值都为 [ 'b ', 'c ', 'd ']
这个时候如果再执行
a = [ '123 ']
为什么现在b的值不是[ '123 ']而是
[ 'b ', 'c ', 'd ']呢??
------解决方案--------------------
a = [ 'a ', 'b ', 'c ', 'd ']
b = a
b 和 a 引用了相同的东西
b 引用的是 [ 'a ', 'b ', 'c ', 'd ']
不是 a
a = [ '123 ']
a 引用了另外一个东西
b 还引用着原来的东西