Проверка на тип на обект в 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'
Практически задачи
Нека имате променлива. Проверете, дали стойността й е цяло число.
Разберете дали зададената променлива е число с плаваща запетая.
Проверете дали променливата съдържа низова стойност.
Проверете дали зададената променлива е речник.
Проверете дали зададената променлива е множество.
Проверете дали зададената променлива е кортеж.
Проверете дали зададената променлива е списък.