Sprawdzanie typu obiektu w Pythonie

Aby sprawdzić typ elementu, należy zastosować funkcję isinstance. Przyjmuje ona pierwszym parametrem element, a drugim - typ, na który jest sprawdzany. Przy tym jako nazwa dla drugiego parametru bierane są nazwy funkcji, przekształcające dane na odpowiedni typ: dla ciągów znaków - str, liczb - int, list - list itd. Funkcja isinstance zwraca wartości logiczne: jeśli element odpowiada typowi, to zwrócone zostanie True, w przeciwnym przypadku - False.

Przykład

Załóżmy, że mamy zmienną tst. Sprawdźmy, czy jej wartość jest ciągiem znaków. W tym celu po prawej stronie od if zapisujemy funkcję isinstance. Do jej parametrów przekazujemy tst i typ str. Jeśli wartość i typ danych się zgadzają, to niech wyświetli się odpowiedni komunikat:

pythontst = 'a'
if isinstance(tst, str):
  print('string')

Wynik wykonania kodu:

python'string'

Przykład

Teraz sprawdźmy, czy zmienna jest liczbą całkowitą:

pythontst = 12
if isinstance(tst, int):
  print('integer')

Wynik wykonania kodu:

python'integer'

Przykład

Aby sprawdzić, czy tst jest liczbą zmiennoprzecinkową, do drugiego parametru isinstance należy przekazać typ float:

pythontst = 12.0
if isinstance(tst, float):
  print('float')

Wynik wykonania kodu:

python'float'

Przykład

Teraz napiszmy warunek, aby sprawdzić tst pod kątem bycia listą:

pythontst = [1, 2, 3]
if isinstance(tst, list):
  print('list')

Wynik wykonania kodu:

python'list'

Przykład

Sprawdźmy, czy zmienna jest krotką:

pythontst = (1, 2, 3)
if isinstance(tst, tuple):
  print('tuple')

Wynik wykonania kodu:

python'tuple'

Przykład

Teraz ustawmy warunek, aby dowiedzieć się, czy wartość zmiennej jest słownikiem:

pythontst = {'a': 1, 'b': 2, 'c': 3}
if isinstance(tst, dict):
  print('dictionary')

Wynik wykonania kodu:

python'dictionary'

Zadania praktyczne

Задание 1

Załóżmy, że masz zmienną. Sprawdź, czy jej wartość jest liczbą całkowitą.

Задание 2

Dowiedz się, czy zadana zmienna jest liczbą zmiennoprzecinkową.

Задание 3

Sprawdź, czy zmienna zawiera wartość tekstową.

Задание 4

Sprawdź, czy zadana zmienna jest słownikiem.

Задание 5

Sprawdź, czy zadana zmienna jest zbiorem.

Задание 6

Sprawdź, czy zadana zmienna jest krotką.

Задание 7

Sprawdź, czy zadana zmienna jest listą.