Почему (0 -6 )равно -6 = False?[дубликат]

Possible Duplicate:
Python “is” operator behaves unexpectedly with integers

Сегодня я попытался отладить свой проект и после нескольких часов анализа получил вот это:

>>> (0-6) is -6
False

но,

>>> (0-5) is -5
True

Не могли бы вы объяснить мне, почему? Возможно, это какой-то баг или очень странное поведение.

> Python 2.7.3 (default, Apr 24 2012, 00:00:54) [GCC 4.7.0 20120414 (prerelease)] on linux2
>>> type(0-6) 

>>> type(-6) 

>>> type((0-6) is -6)

>>> 
129
задан Community 23 May 2017 в 12:25
поделиться