Курс 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. Проверка дублей в списке.
  2. Python: отличительная особенность — отступы
  3. Проверка файла .py на синтаксис.
  4. Работа с IP-адресами в Python
  5. Фильтрация списка чисел
  6. ChainMap.new_child() — добавление нового словаря
  7. Оператор del в Python
  8. Создание треугольника Паскаля
  9. Создание пользовательской коллекции в Python
  10. Реализация метода __abs__ в Python
  11. Управление виртуальными окружениями в Python
  12. Избегание изменяемых аргументов
  13. Цикл for с enumerate() в Python
  14. Вычисление логарифмов в Python
  15. Инверсия списка и строки в Python
  16. Работа со временем в Python
  17. Форматирование строк с помощью f-строк
  18. Возврат нескольких значений из функции
  19. Цепные операции в Python
  20. Константы в модуле cmath
  21. Многострочные строки в Python
  22. Работа с итераторами через срезы
  23. Разработка Telegram-ботов
  24. Функция count() в Python
  25. Разделение строки в Python
  26. Нахождение максимального значения и его индекса в списке
  27. ChainMap избыточные ключи
  28. Оператор is в Python
  29. Метод Event.wait() в Python
  30. Работа с SQLite в Python
  31. Метод __call__ в Python
  32. Распаковка с оператором *
  33. Простой калькулятор Python
  34. Повторение элементов списков
  35. Сравнение def и lambda в Python
  36. Конвертация текстовых чисел с помощью Numerizer
  37. Работа с JSON данными в Python
  38. Объединение списков с использованием itertools.chain
  39. Проверка типов с помощью isinstance
  40. Метод Enumerate() для списков
  41. Измерение времени выполнения кода
  42. Сравнение def и lambda функций в Python
  43. Списки в Python
  44. Форматирование вывода списков
  45. Оператор zip в Python

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