Курс Python → Оператор is в Python

Оператор is в Python используется для проверки, ссылаются ли оба операнда на один и тот же объект. Другими словами, этот оператор сравнивает идентификаторы операндов, а не их значения. С другой стороны, оператор == сравнивает значения обоих операндов и проверяет, совпадают ли они.

Например, если у нас есть две переменные, a и b, и мы хотим проверить, указывают ли они на один и тот же объект, мы используем оператор is. Если же нам нужно проверить, равны ли значения этих переменных, мы используем оператор ==.

Следует также учитывать, что в Python при запуске числа от -5 до 256 выделяются заранее и используются повторно. То есть, если у нас есть переменные, содержащие значения от -5 до 256, оператор is вернет True, так как они ссылаются на один и тот же объект. Однако для чисел за пределами этого диапазона каждый раз будет создаваться новый объект.


a = 256
b = 256

print(a is b)  # Вернет True

x = 257
y = 257

print(x is y)  # Вернет False

В приведенном примере переменные a и b ссылаются на один и тот же объект (число 256), поэтому оператор is вернет True. Однако переменные x и y содержат число 257, которое не входит в заранее выделенный диапазон, поэтому оператор is вернет False.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Асинхронное выполнение задач в процессах
  2. Замыкания в Python
  3. Оператор объединения словарей
  4. Пустой оператор pass в Python
  5. Генерация UUID в Python
  6. Python и Юникод: работа с цифрами
  7. Мониторинг работы программы Py-spy
  8. Выход из профиля в Django
  9. Символ подчеркивания в Python
  10. Управление мышью и клавиатурой с Pyautogui
  11. Работа с изображениями PIL
  12. Работа с файловой системой в Python
  13. Python union() функция — объединение множеств
  14. Удаление и повторная вставка ключа в OrderedDict
  15. Функции map, filter, reduce
  16. Concrete Paths — метод .with_suffix()
  17. Сумма элементов списка
  18. Удаление пробелов методом translate()
  19. Метод __irshift__ для побитового сдвига вправо
  20. Переопределение метода divmod
  21. Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
  22. Хранение переменных в Python.
  23. Работа с defaultdictами в Python
  24. Синтаксис переменных цикла в Python
  25. Многострочные комментарии в Python
  26. Обход словаря в Python
  27. Определение локальных переменных в Python
  28. Модуль pprint: улучшение вывода данных
  29. Аннотации типов в Python
  30. Условные выражения в Python
  31. Иерархия классов в Python
  32. Преобразование символов в нижний регистр
  33. Закрытие файла в Python
  34. Динамическая типизация в Python
  35. Оптимизация памяти с помощью __slots__
  36. Работа с индексами списков
  37. Форматирование данных с помощью pprint
  38. Оформление кода на Python
  39. Работа с изображениями Pillow
  40. Шаблоны и наследование в Flask
  41. Блок else в обработке исключений
  42. Инверсия списка/строки в Python
  43. Именование переменных в Python
  44. Подчеркивание в REPL
  45. Нан-рефлексивность в Python
  46. Списковое включение в Python
  47. Модуль Antigravity в Python 3

Marketello читают маркетологи из крутых компаний