Курс Python → Проверка класса объекта

Функция isinstance() в Python используется для проверки принадлежности объекта к указанному классу или его подклассу. Она принимает два аргумента: объект, который нужно проверить, и класс (или кортеж классов), к которому нужно проверить принадлежность. Если объект является экземпляром указанного класса или его подкласса, функция возвращает True, в противном случае — False.

Например, если у нас есть класс Animal и класс Dog, который является подклассом Animal, мы можем использовать функцию isinstance() для проверки, является ли объект экземпляром класса Dog или Animal:


class Animal:
    pass

class Dog(Animal):
    pass

dog = Dog()
print(isinstance(dog, Dog))  # Вернет True
print(isinstance(dog, Animal))  # Вернет True
print(isinstance(dog, int))  # Вернет False

Функция isinstance() также поддерживает проверку на принадлежность к нескольким классам с помощью кортежа классов. Например, мы можем проверить, является ли объект экземпляром классов int, float или str:


obj = 10
print(isinstance(obj, (int, float, str)))  # Вернет True

Однако стоит отметить, что функция isinstance() не поддерживает проверку на принадлежность к другим типам последовательностей, за исключением кортежей с классами. Попытка передать другой тип данных в качестве аргумента classinfo приведет к ошибке.

Таким образом, функция isinstance() является удобным способом проверки принадлежности объекта к определенному классу или его подклассу в Python, что может быть полезно при написании условий и проверок в программах.

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

Автор урока

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

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

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

  1. Считывание бинарного файла в Python
  2. Принципы SRP и OCP
  3. Оператор «or» в Python
  4. Логирование с Logzero: ротация файла
  5. Поиск индекса элемента
  6. Определение индекса элемента списка
  7. Доступ к локальным переменным
  8. Улучшенные подсказки для импорта в Python 3.12
  9. JSON в Python: модуль, dump, dumps, load
  10. Работа с timedelta
  11. Генерация случайных чисел в Python
  12. Метод rrshift для пользовательских объектов
  13. Оператор Walrus в Python 3.8
  14. Работа с географическими данными в Python
  15. Отображение графиков в Jupyter с Matplotlib
  16. Гибкие функции Python
  17. Работа с коллекциями Python
  18. Ускорение кода с помощью векторизации
  19. Работа с модулем cmath
  20. Работа с временем в Python
  21. Создание и операции с дробями
  22. Декораторы в Python
  23. Переопределение метода delitem в Python
  24. Проверка однородности элементов списка
  25. Создание и использование ChainMap
  26. Исправление ошибки NameError
  27. Печать месячного календаря
  28. Модуль inspect
  29. Форматирование строк в Python
  30. Использование метода lower()
  31. Модуль pprint
  32. Оператор is в Python
  33. Оператор деления для класса Rational
  34. Библиотека Rich: форматирование текста
  35. Просмотр файла в Jupyter Noteboo
  36. Игра Виселица на Python
  37. capitalize() — изменение регистра первого символа строки
  38. CLI-инструмент howdoi
  39. Метод eq для сравнения объектов
  40. Создание словарей и множеств в Python
  41. Создание вкладок с TKinter
  42. Создание коллекций из генератора
  43. Функции в Python: создание и вызов
  44. Округление дробей в Python
  45. Управление фоновыми задачами в Python

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