Օբյեկտի տիպի ստուգումը Python-ում
Տարրի տիպը ստուգելու համար անհրաժեշտ է կիրառել
isinstance ֆունկցիան: Այն առաջին
պարամետրով ընդունում է տարրը, իսկ երկրորդով՝
տիպը, որի նկատմամբ այն ստուգվում է: Այս դեպքում
որպես երկրորդ պարամետրի անվանում վերցվում են տվյալները
համապատասխան տիպի վերափոխող ֆունկցիաների անունները՝ տողերի համար - str,
թվերի - int, ցուցակների - list
և այլն: isinstance ֆունկցիան վերադարձնում է
բուլյան արժեքներ. եթե տարրը համապատասխանում է
տիպին, ապա կվերադարձվի True, հակառակ
դեպքում՝ False:
Օրինակ
Ենթադրենք ունենք tst փոփոխականը:
Եկեք ստուգենք, արդյոք դրա արժեքը
տող է: Դրա համար if-ից աջ
գրում ենք isinstance ֆունկցիան: Դրա
պարամետրերում փոխանցում ենք tst-ը և str տիպը:
Եթե արժեքը և տվյալների տիպը
համընկել են, ապա թող արտածվի համապատասխան
հաղորդագրություն:
tst = 'a'
if isinstance(tst, str):
print('string')
Կոդի կատարման արդյունքը:
'string'
Օրինակ
Հիմա եկեք ստուգենք, արդյոք փոփոխականը ամբողջ թիվ է.
tst = 12
if isinstance(tst, int):
print('integer')
Կոդի կատարման արդյունքը.
'integer'
Օրինակ
tst-ը լողացող կետով թիվ է, թե ոչ, ստուգելու համար
isinstance-ի երկրորդ
պարամետրին պետք է փոխանցել
float տիպը.
tst = 12.0
if isinstance(tst, float):
print('float')
Կոդի կատարման արդյունքը.
'float'
Օրինակ
Հիմա եկեք գրենք պայման, որպեսզի
ստուգենք tst-ը ցուցակ է, թե ոչ.
tst = [1, 2, 3]
if isinstance(tst, list):
print('list')
Կոդի կատարման արդյունքը.
'list'
Օրինակ
Եկեք ստուգենք, արդյոք փոփոխականը տուպլ է.
tst = (1, 2, 3)
if isinstance(tst, tuple):
print('tuple')
Կոդի կատարման արդյունքը.
'tuple'
Օրինակ
Հիմա սահմանենք պայման, որպեսզի պարզենք, արդյոք փոփոխականի արժեքը բառարան է.
tst = {'a': 1, 'b': 2, 'c': 3}
if isinstance(tst, dict):
print('dictionary')
Կոդի կատարման արդյունքը.
'dictionary'
Գործնական առաջադրանքներ
Ենթադրենք ունեք փոփոխական: Ստուգեք, արդյոք դրա արժեքը ամբողջ թիվ է:
Պարզեք, արդյոք տրված փոփոխականը լողացող կետով թիվ է:
Ստուգեք, արդյոք փոփոխականը պարունակում է տողային արժեք:
Ստուգեք, արդյոք տրված փոփոխականը բառարան է:
Ստուգեք, արդյոք տրված փոփոխականը բազմություն է:
Ստուգեք, արդյոք տրված փոփոխականը տուպլ է:
Ստուգեք, արդյոք տրված փոփոխականը ցուցակ է: