Курс 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"
- Считывание бинарного файла в Python
- Принципы SRP и OCP
- Оператор «or» в Python
- Логирование с Logzero: ротация файла
- Поиск индекса элемента
- Определение индекса элемента списка
- Доступ к локальным переменным
- Улучшенные подсказки для импорта в Python 3.12
- JSON в Python: модуль, dump, dumps, load
- Работа с timedelta
- Генерация случайных чисел в Python
- Метод rrshift для пользовательских объектов
- Оператор Walrus в Python 3.8
- Работа с географическими данными в Python
- Отображение графиков в Jupyter с Matplotlib
- Гибкие функции Python
- Работа с коллекциями Python
- Ускорение кода с помощью векторизации
- Работа с модулем cmath
- Работа с временем в Python
- Создание и операции с дробями
- Декораторы в Python
- Переопределение метода delitem в Python
- Проверка однородности элементов списка
- Создание и использование ChainMap
- Исправление ошибки NameError
- Печать месячного календаря
- Модуль inspect
- Форматирование строк в Python
- Использование метода lower()
- Модуль pprint
- Оператор is в Python
- Оператор деления для класса Rational
- Библиотека Rich: форматирование текста
- Просмотр файла в Jupyter Noteboo
- Игра Виселица на Python
- capitalize() — изменение регистра первого символа строки
- CLI-инструмент howdoi
- Метод eq для сравнения объектов
- Создание словарей и множеств в Python
- Создание вкладок с TKinter
- Создание коллекций из генератора
- Функции в Python: создание и вызов
- Округление дробей в Python
- Управление фоновыми задачами в Python















