Встречается на 1% собеседований по Python
Зачем нужен оператор is
Оператор is в Python проверяет, ссылаются ли две переменные на один и тот же объект в памяти, а не на равенство их значений. Он сравнивает идентификаторы объектов (id()), а не их содержимое.
Пример:
python
a = [1, 2, 3]
b = a
c = [1, 2, 3]
print(a is b) # True (одна и та же ссылка)
print(a is c) # False (разные объекты)
print(a == c) # True (значения равны)
text
**Когда использовать:**
- Для проверки на `None` (`x is None`).
- Для сравнения синглтонов (например, `True`, `False`).
- При работе с изменяемыми объектами, когда важно убедиться, что это один и тот же экземпляр.
**Осторожно:** Для чисел и строк в некоторых случаях Python кэширует объекты, и `is` может давать неожиданные результаты (например, `a = 256; b = 256; a is b` → `True`, но `a = 257; b = 257; a is b` → `False`). Лучше использовать `==` для сравнения значений.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы