x is y x is not y
Операторы is
и not is
проверяют идентичность объекта: x is y
будет истинно тогда и только тогда, когда x
и y
являются одним и тем же объектом.
Выражение x is not y
дает значение обратной истинности, т.е. возвращает True
, если объекты НЕ идентичны.
Идентичность объекта определяется с помощью функции id()
. Другими словами объекты идентичны, если они имеют одинаковый индификатор во время выполнения программы.
Поведение операторов is
и is not
не может быть настроено. Кроме того, они могут быть применены к любым двум объектам одновременно и никогда не вызывают исключения.
>>> x = 2 + 1 >>> 3 is x # True # смотрим индификаторы >>> id(x) 10914560 >>> id(3) 10914560 # пример со списками >>> x = [1, 2, 3, 4, 5, 6] >>> y = x >>> y is x # True >>> y = x.copy() >>> y is x # False >>> y is not x # True