Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
7 профессий по цене одной
07:05:47:06
дн. ч. мин. сек.
17 Мар 2024
2 мин
7631

Проверка типа объекта в Python

Часто в программировании возникает необходимость определить тип конкретного объекта. Это может быть полезно, например, при разработке функций, которые

Часто в программировании возникает необходимость определить тип конкретного объекта. Это может быть полезно, например, при разработке функций, которые должны работать только с определенными типами данных. Рассмотрим пример: есть функция, которая принимает на вход строку и выполняет некоторые операции с этой строкой. Однако, если на вход придет число или список, функция может не справиться со своей задачей и выдать ошибку.

В Python есть несколько способов проверить тип объекта.

Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.

Использование функции type()

Один из самых простых и популярных способов проверить тип объекта в Python — использовать встроенную функцию type(). Эта функция возвращает тип объекта, который передается ей в качестве аргумента.

print(type('Hello, world!'))  # <class 'str'>
print(type(123))  # <class 'int'>
print(type(3.14))  # <class 'float'>
print(type(['apple', 'banana', 'cherry']))  # <class 'list'>

Однако, чтобы сравнить результат функции type() с определенным типом, нужно использовать конструкцию вида type(obj) is SomeType. Например:

if type('Hello, world!') is str:
    print('Это строка!')

Использование функции isinstance()

Еще один способ проверить тип объекта в Python — использовать функцию isinstance(). Эта функция принимает два аргумента: объект, тип которого нужно проверить, и тип (или кортеж типов), с которым следует сравнить тип объекта.

print(isinstance('Hello, world!', str))  # True
print(isinstance(123, int))  # True
print(isinstance(3.14, float))  # True
print(isinstance(['apple', 'banana', 'cherry'], list))  # True

Функция isinstance() также позволяет проверить, является ли объект экземпляром определенного класса или его подкласса. Это может быть полезно при работе с объектно-ориентированным программированием в Python.

На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.

Вывод

Проверка типа объекта — полезный инструмент в арсенале программиста на Python. Но стоит помнить, что частое использование таких проверок может указывать на неправильное проектирование программы. В идеальном случае код должен быть написан так, чтобы он мог работать с любыми объектами, предоставляющими необходимый интерфейс, независимо от их конкретного типа.

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей

Добавить комментарий