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:

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

Koodi täitmise tulemus:

python'string'

Näide

Nüüd kontrollime, kas muutuja on täisarv:

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

Koodi täitmise tulemus:

python'integer'

Näide

Et kontrollida, kas tst on ujukomaarv, tuleb teise parameetrina isinstance edastada tüüp float:

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

Koodi täitmise tulemus:

python'float'

Näide

Nüüd kirjutame tingimuse, et kontrollida tst loendi kohta:

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

Koodi täitmise tulemus:

python'list'

Näide

Kontrollime, kas muutuja on ennik:

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

Koodi täitmise tulemus:

python'tuple'

Näide

Nüüd määrame tingimuse, et teada sada, kas muutuja väärtus on sõnastik:

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

Koodi täitmise tulemus:

python'dictionary'

Praktilised ülesanded

Задание 1

Olgu teil muutuja. Kontrollige, kas selle väärtus on täisarv.

Задание 2

Uurige, kas antud muutuja on ujukomaarv.

Задание 3

Kontrollige, kas muutuja sisaldab stringi väärtust.

Задание 4

Kontrollige, kas antud muutuja on sõnastik.

Задание 5

Kontrollige, kas antud muutuja on hulk.

Задание 6

Kontrollige, kas antud muutuja on ennik.

Задание 7

Kontrollige, kas antud muutuja on loend.