做的:
>>>'a'*20 is "aaaaaaaaaaaaaaaaaaaa"
给出
>>>True
在做的时候:
>>>'a'*21 is "aaaaaaaaaaaaaaaaaaaaa"
给出
>>>False
这是怎么回事?这是一个错误吗?
答案 0 :(得分:1)
对于较小的对象,python正在重用已分配的内存。 但对于较大的物体,参考正在改变。 请检查this
x='aaaaaaaaaaaaaaaaaaaaa'
y='a'*21
t= 'a'*20
u = 'aaaaaaaaaaaaaaaaaaaa'
这里t和你引用相同的字符串,但x和y不是这样,因此对象比较不起作用。