Objekti tüübi kontrollimine Pythonis
Elemendi tüübi kontrollimiseks tuleb kasutada
funktsiooni isinstance. See võtab esimese
parameetrina elemendi ja teise -
tüübi, mille suhtes seda kontrollitakse. Samal ajal
võetakse teise parameetri nimeks
funktsioonide nimed, mis teisendavad andmeid
vastavasse tüüpi: stringide puhul - str,
numbrite puhul - int, loendite puhul - list
jne. Funktsioon isinstance tagastab
tõeväärtused: kui element vastab
tüübile, tagastatakse True, vastasel
juhul - False.
Näide
Olgu meil muutuja tst.
Kontrollime, kas selle väärtus on
string. Selleks kirjutame if-st paremale
funktsiooni isinstance.
Selle parameetritesse anname tst ja tüübi
str. Kui väärtus ja andmetüüp
klappisid, siis kuvatakse vastav
sõnum:
tst = 'a'
if isinstance(tst, str):
print('string')
Koodi täitmise tulemus:
'string'
Näide
Nüüd kontrollime, kas muutuja on täisarv:
tst = 12
if isinstance(tst, int):
print('integer')
Koodi täitmise tulemus:
'integer'
Näide
Et kontrollida, kas tst
on ujukomaarv, tuleb teise
parameetrina isinstance edastada
tüüp float:
tst = 12.0
if isinstance(tst, float):
print('float')
Koodi täitmise tulemus:
'float'
Näide
Nüüd kirjutame tingimuse, et
kontrollida tst loendi kohta:
tst = [1, 2, 3]
if isinstance(tst, list):
print('list')
Koodi täitmise tulemus:
'list'
Näide
Kontrollime, kas muutuja on ennik:
tst = (1, 2, 3)
if isinstance(tst, tuple):
print('tuple')
Koodi täitmise tulemus:
'tuple'
Näide
Nüüd määrame tingimuse, et teada sada, kas muutuja väärtus on sõnastik:
tst = {'a': 1, 'b': 2, 'c': 3}
if isinstance(tst, dict):
print('dictionary')
Koodi täitmise tulemus:
'dictionary'
Praktilised ülesanded
Olgu teil muutuja. Kontrollige, kas selle väärtus on täisarv.
Uurige, kas antud muutuja on ujukomaarv.
Kontrollige, kas muutuja sisaldab stringi väärtust.
Kontrollige, kas antud muutuja on sõnastik.
Kontrollige, kas antud muutuja on hulk.
Kontrollige, kas antud muutuja on ennik.
Kontrollige, kas antud muutuja on loend.