TGViewer
Cool and Fun Python Cool and Fun Python @python3k · 510 subscribers
Post #98 507
В Python всё объект. И иногда надо убедиться, что объект именно того типа, который нам нужен. Как же проверить тип объекта?

Допустим у нас есть переменная spam. И мы хотим убедится, что она указывает на объект типа int.
spam = 42

0. Способ новичка-принтовичка
print(type(spam))
Простой и понятный способ для новичков. Но не подходит для использования в продакшн-коде, так как выводит информацию на экран.

1. Сравнительный
if type(spam) == int:
...
Простой способ сравнить тип переменной с конкретным типом.

2. Сравнительный +
if type(spam) is int:
...
Более строгая проверка на совпадение объектов.

Познавательная минутка🤓
Оператор is проверяет не только тип, но и идентичность объекта. И когда вы прочитали в начале статьи: «В Python всё объект», речь шла действительно обо всём в Python.
Да, тип объекта так же является объектом:
- 42 - объект типа int
- int - объект типа type
- type - объект типа type

В Python type является базовым типом, от которого наследуются другие типы.
Так вот, is проверяет являются ли объекты справа и слева от оператора одним и тем же объектом или нет

3. Функциональный
if isinstance(spam,  int):
    ...
Гибкий способ проверить, является ли объект экземпляром определенного класса или его подкласса. One love forever ❤️

4. Бонусный способ. Проверка на несколько типов, or
if isinstance(spam,  (int, float, complex,)):
    ...
Передача кортежа позволяет проверить объект на принадлежность к нескольким типам одновременно. Работает как цепочка сравнений через or. Достаточно совпасть с одним из типов, чтобы получить истину
  • 🔥 8
  • 👍 3
  • 🤯 1
More from @python3k
  1. Feb 25, 2026Магические числа Нравится волшебство? А вот и зря. Магические числа - антипаттерн в програ…
  2. Feb 9, 2026Про ОС Оказывается мысли о том, что у программиста должен быть MacBook, а код надо писать…
  3. Feb 1, 2026Кто-нибудь пользовался новой удалённой отладкой в Python 3.14? Поделитесь своим опытом в к…
  4. Jan 25, 2026Redis хорош, но... Ничего не имею против хранения данный в ОЗУ при помощи Redis. Быстрый д…
  5. Jan 20, 2026В продолжение идеи про словарь функций Начало тут def handle_negative(): print("Обработка…
  6. Jan 11, 2026Альтернатива if-elif-else / match-case из далёкого прошлого Этот приём я узнал лет пять на…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →