Операторы тождественности
Операторы тождественности не спрашивают, равны ли два объекта. Они спрашивают, являются ли оба на самом деле одним и тем же объектом, хранящимся по одному и тому же адресу в памяти:
Таблица операторов тождественности
main.py
# Operator | Description | Example
# is | Returns True if both variables are the same object | x is y
# is not | Returns True if both variables are not the same object | x is not y
Примеры
Пример
is даёт True, когда две переменные указывают на один и тот же объект:
Prompt
Напишите программу на Python, которая создаёт два списка с одинаковыми значениями, присваивает один из них третьей переменной, а затем сравнивает их с помощью оператора «is» и проверяет равенство с помощью оператора «==». Выведите результаты.
Вывод: полная программа на Python
main.py
x = ["apple", "banana"]
y = ["apple", "banana"]
z = x
print(x is z)
print(x is y)
print(x == y)
Пример
is not даёт True, когда две переменные указывают на разные объекты:
Prompt
Напишите программу на Python, которая создаёт два списка с одинаковыми значениями и с помощью оператора «is not» проверяет, являются ли они разными объектами. Выведите результат.
Вывод: полная программа на Python
main.py
x = ["apple", "banana"]
y = ["apple", "banana"]
print(x is not y)
Разница между is и ==
== сравнивает значения, хранящиеся в двух переменных, а is спрашивает, указывают ли обе переменные на один объект в памяти.
Пример
Prompt
Напишите программу на Python, которая создаёт два списка с одинаковыми значениями и показывает разницу между «==» (равенство значений) и «is» (тождественность). Выведите результаты.
Вывод: полная программа на Python
main.py
x = [1, 2, 3]
y = [1, 2, 3]
print(x == y)
print(x is y)