第1个回答 2009-12-23
指向同一个内存地址. 但是即使是这样说,实际上还是有两种不同的理解
python变量分两种 mutable immutable, 就是可变和不可变的意思
数字,字符串 tuple (就是“()”这种形式的数组), 这种数据类型是不可变的, 因此
你以上的程序的含义是 you 指向 'QH', me指向you指向的内容, 所以me 就指向了'QH', 然后 you指向'LJQ', 这里是you本身的值变了, 而不是you指向的对象的值变了。
you=[1]
me=you
you.append(2)
print you
print me
输出
[1, 2]
[1, 2]
这里, 你看到 you.append(2), 这其实是you指向的 [1]对象进行了append()操作,因此是该对象本身发生了变化([],{}以及其他大部分数据类型都是可变数据类型), 因此 me 和 you都指向同一个对象, 输出自然就是相同的。