Python赋值的本质是引用传递,为什么字典左右两边地址不同?

name_dict = {"name":"xm"}
print(name_dict is {"name":"xm"}) # 结果是false

img

因为 name_dict 和 {"name":"xm"} 的地址不一样, 所以, is 返回False
意思就是 name_dict 和 {"name":"xm"} 不是同一个对象。

{"name":"xm"}是一个字典,它不是字符串,并不会有内存唯一地址,你每写一次,其实都新定义了一个字典,区别只是是否有一个变量来保存这个地址