Preverjanje tipa objekta v Pythonu

Za preverbo tipa elementa uporabimo funkcijo isinstance. Prvi parameter sprejme element, drugi parameter pa tip, za katerega ga preverjamo. Pri tem se kot ime za drugi parameter uporabljajo imena funkcij, ki pretvarjajo podatke v ustrezen tip: za nize - str, števila - int, sezname - list itd. Funkcija isinstance vrača logične vrednosti: če element ustreza tipu, vrne True, v nasprotnem primeru - False.

Primer

Recimo, da imamo spremenljivko tst. Preverimo, ali je njena vrednost niz. Desno od if zapišemo funkcijo isinstance. V njen parameter podamo tst in tip str. Če sta vrednost in tip podatkov enaka, naj se izpiše ustrezno sporočilo:

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

Rezultat izvajanja kode:

python'string'

Primer

Zdaj preverimo, ali je spremenljivka celo število:

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

Rezultat izvajanja kode:

python'integer'

Primer

Za preverbo, ali je tst število s plavajočo vejico, je treba v drugi parameter isinstance podati tip float:

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

Rezultat izvajanja kode:

python'float'

Primer

Zdaj napišimo pogoj, da preverimo tst za seznam:

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

Rezultat izvajanja kode:

python'list'

Primer

Preverimo, ali je spremenljivka terka (tuple):

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

Rezultat izvajanja kode:

python'tuple'

Primer

Zdaj nastavimo pogoj, da ugotovimo, ali je vrednost spremenljivke slovar:

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

Rezultat izvajanja kode:

python'dictionary'

Praktične naloge

Задание 1

Recimo, da imate spremenljivko. Preverite, ali je njena vrednost celo število.

Задание 2

Ugotovite, ali je dana spremenljivka število s plavajočo vejico.

Задание 3

Preverite, ali spremenljivka vsebuje nizko vrednost (string).

Задание 4

Preverite, ali je dana spremenljivka slovar.

Задание 5

Preverite, ali je dana spremenljivka množica (set).

Задание 6

Preverite, ali je dana spremenljivka terka (tuple).

Задание 7

Preverite, ali je dana spremenljivka seznam.