Проверка типа объекта в Python
Чтобы проверить тип элемента, нужно
применить функцию isinstance
. Она
первым параметром принимает элемент,
а вторым - тип, на который он проверяется.
При этом в качестве названия для
второго параметра берутся
имена функций, преобразующие данные в соответствующий
тип: для строк - str
,
чисел - int
, списков -
list
и т.д. Функция isinstance
возвращает булевые значения:
если элемент соответствует типу, то вернется
True
, в противном случае -
False
.
Пример
Пусть у нас есть переменная
tst
. Давайте проверим,
является ли ее значение строкой. Для этого
справа от if
записываем функцию
isinstance
. В ее параметры
передаем tst
и тип str
.
Если значение и тип данных совпали,
то пусть выведется соответствующее
сообщение:
tst = 'a'
if isinstance(tst, str):
print('string')
Результат выполнения кода:
'string'
Пример
Теперь давайте проверим, является ли переменная целым числом:
tst = 12
if isinstance(tst, int):
print('integer')
Результат выполнения кода:
'integer'
Пример
Чтобы проверить, является ли tst
числом с плавающей точкой, во
второй параметр isinstance
следует
передать тип float
:
tst = 12.0
if isinstance(tst, float):
print('float')
Результат выполнения кода:
'float'
Пример
Теперь давайте напишем условие,
чтобы проверить tst
на список:
tst = [1, 2, 3]
if isinstance(tst, list):
print('list')
Результат выполнения кода:
'list'
Пример
Давайте проверить, является ли переменная кортежем:
tst = (1, 2, 3)
if isinstance(tst, tuple):
print('tuple')
Результат выполнения кода:
'tuple'
Пример
Теперь зададим условие, чтобы узнать, является ли значение переменной словарем:
tst = {'a': 1, 'b': 2, 'c': 3}
if isinstance(tst, dict):
print('dictionary')
Результат выполнения кода:
'dictionary'
Практические задачи
Пусть у вас есть переменная. Проверьте, является ли ее значение целым числом.
Узнайте, является ли заданная переменная числом с плавающей точкой.
Проверьте, содержит ли переменная строчное значение.
Проверьте, является ли заданная переменная словарем.
Проверьте, является ли заданная переменная множеством.
Проверьте, является ли заданная переменная кортежем.
Проверьте, является ли заданная переменная списком.