我一直在玩,发现了这个。
运算符is和is not测试对象的身份:x is y 为真当且仅当 x 和 y 是同一对象时。对象的身份是使用该id()函数确定的。x 不是 y 会产生相反的真值。
>>> list(map(id, [0, 1, True, not False, False, not True]))
[94660352164256, 94660352164288, 94660351988128, 94660351988128, 94660351988096, 94660351988096]
现在一切正常:0、1、True且False具有不同的 id,因为它们是不同的对象。他们是:
>>> True is 1
False
>>> False is 0
False
>>> not False is True
True
>>> not True is False
True
但是之后:
>>> not False is 1
True
>>> not True is 0
True
>>>
我的问题是: 、和全部返回怎么可能?True is not 1not False is Truenot False is 1True
DIEA
慕少森
相关分类