Встречается на собеседованиях • сегодня

Какие знаешь способы проверки типа данных в Python

В Python есть несколько способов проверки типов данных:

  1. type() - возвращает тип объекта
python
x = 5
print(type(x) == int)  # True
  1. isinstance() - проверяет принадлежность объекта к типу/классу, учитывает наследование
python
class MyInt(int): pass
x = MyInt(5)
print(isinstance(x, int))  # True
  1. hasattr() - проверяет наличие атрибута (полезно для duck typing)
python
def is_iterable(obj):
    return hasattr(obj, '__iter__')
  1. typing модуль (Python 3.5+) - для аннотаций и проверки типов
python
from typing import List
def process(items: List[int]) -> None: ...

Для production кода лучше использовать isinstance(), так как он корректно работает с наследованием. type() может давать неожиданные результаты с подклассами. В Python принят duck typing, поэтому часто лучше проверять поведение (через hasattr()), а не конкретный тип.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы