根据类型创建不同的对象或相同(基本python)

时间:2014-10-28 12:20:00

标签: python memory types

我已经读过python如何创建对象并放置"标签"对于那些作为分配给它的变量。但是,我看到如果有两个字符串或整数具有相同的值,它只为它分配一个内存点,不像列表,元组,dics。当一个案例发生而另一个案例发生时,是否存在规则或类型列表?特别是,如果我设置

>>> x,y='a','a'
>>> x is y
True
>>> x,y=1,1
>>> x is y
True

但另一方面,如果我做了

>>> x,y={'a':1},{'a':1}
>>> x is y
False
>>> x,y=(1,),(1,)
>>> x is y
False
>>> x,y=[1],[1]
>>> x is y
False

1 个答案:

答案 0 :(得分:0)

字符串在Python中是不可变的并且可以重用。字典不是,因此不能重复使用。新的创建。他们拥有相同的键和值只是偶然的。