Pythonda obyektin tipinin yoxlanilmasi

Elementin tipini yoxlamaq ucun funksiyasindan isinstance istifade etmek lazimdir. O, birinci parametr kimi elementi, ikinci parametr kimi ise yoxlanilan tipi qebul edir. Bu zaman ikinci parametrin adi kimi melumati uygun tipa ceviren funksiyalarin adlari goturulur: setirler ucun - str, reqemler ucun - int, siyahilar ucun - list ve s. isinstance funksiyasi Bul qymetlerini qaytarir: eger element uygun tipde olsa, True qayidir, eks halda ise - False.

Numune

Tutaq ki, bizim tst adli deyishenimiz var. Gelin onun qymetinin setir olub-olmadigini yoxlayaq. Bunun ucun if-den sonra isinstance funksiyasini yaziriq. Onun parametrlerine tst ve tip str otururuk. Eger qymet ve tip uygun gelse, uygun mesaj cixacaq:

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

Kodu icra etmekin neticesi:

python'string'

Numune

Indi ise deyishenin tam reqem olub-olmadigini yoxlayaq:

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

Kodu icra etmekin neticesi:

python'integer'

Numune

tst-in uzluqlu reqem olub-olmadigini yoxlamaq ucun, ikinci parametre isinstance-e float tipi oturulmelidir:

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

Kodu icra etmekin neticesi:

python'float'

Numune

Indi gelin tst-i siyahi uzre yoxlamaq ucun sert yazaq:

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

Kodu icra etmekin neticesi:

python'list'

Numune

Gelin deyishenin kortej olub-olmadigini yoxlayaq:

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

Kodu icra etmekin neticesi:

python'tuple'

Numune

Indi ise deyishenin qymetinin luget olub-olmadigini oyrenmek ucun sert teyin edek:

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

Kodu icra etmekin neticesi:

python'dictionary'

Praktiki tapshiriqlar

Задание 1

Tutaq ki, sizin deyisheniniz var. Onun qymetinin tam reqem olub-olmadigini yoxlayin.

Задание 2

Verilmish deyishenin uzluqlu reqem olub-olmadigini oyrenin.

Задание 3

Deyishenin setir qymeti olub-olmadigini yoxlayin.

Задание 4

Verilmish deyishenin luget olub-olmadigini yoxlayin.

Задание 5

Verilmish deyishenin cem olub-olmadigini yoxlayin.

Задание 6

Verilmish deyishenin kortej olub-olmadigini yoxlayin.

Задание 7

Verilmish deyishenin siyahi olub-olmadigini yoxlayin.