Курс 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. Функция divmod() в Python
  2. Установка и использование howdoi
  3. Удаление дубликатов из списка с помощью dict.fromkeys
  4. Вычисление фазы комплексного числа
  5. Использование *args
  6. Декораторы с @wraps
  7. Работа с байтовыми строками в Python
  8. Объединение словарей в Python
  9. Считывание бинарного файла в Python
  10. Обход элементов в Python
  11. PUT запрос для обновления данных
  12. Кортежи в Python: особенности и преимущества
  13. Отображение HTML кода в Python
  14. Безопасные SQL-запросы в Python 3.11
  15. Метод radd для пользовательских чисел
  16. Установка и использование Logzero
  17. Настройка Cron
  18. Magic Commands — улучшение работы с Python
  19. Многострочные строки в Python
  20. Возврат нескольких значений
  21. Нан-рефлексивность в Python
  22. Структуры данных в Python
  23. Переопределение метода __pow__
  24. Работа с комплексными числами в Python
  25. Автоматизация с Python
  26. Функция zip() — объединение последовательностей
  27. Генераторы в Python
  28. OrderedDict — упорядоченный словарь
  29. Основы работы с базами данных в Python
  30. Удаление ключа из словаря в Python
  31. Разделение строк в Python
  32. Создание и использование ChainMap
  33. Подписка на каналы разработчиков
  34. Склеивание строк через метод join()
  35. Работа с defaultdictами в Python
  36. Работа с очередями в Python
  37. Активация Matplotlib в Jupyter
  38. Импорт в Python: список all
  39. Роль object и type в Python
  40. Избегание изменяемых аргументов
  41. Описание скриптов в README
  42. Howdoi — получение ответов из терминала
  43. Оператор деления для класса Rational
  44. Модуль sys: основы
  45. Генерация случайных чисел в Python
  46. Уникальные значения из списка
  47. Сложные типы данных в Python
  48. Настройка вывода NumPy

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