Funkcija type () grąžina objekto tipą arba grąžina naujo tipo objektą pagal perduotus argumentus.
type()
Funkcija turi dvi skirtingas formas:
tipas (objektas) tipas (vardas, pagrindai, diktantas)
type () Su vieno objekto parametru
Jei perduodamas vienas objektas type()
, funkcija grąžina savo tipą.
1 pavyzdys: gaukite objekto tipą
numbers_list = (1, 2) print(type(numbers_list)) numbers_dict = (1: 'one', 2: 'two') print(type(numbers_dict)) class Foo: a = 0 foo = Foo() print(type(foo))
Rezultatas
Jei reikia patikrinti objekto tipą, geriau naudoti „Python isinstance ()“ funkciją. Taip yra todėl, kad isinstance()
funkcija taip pat tikrina, ar nurodytas objektas yra poklasio egzempliorius.
type () Su pavadinimu, bazėmis ir diktuojamais parametrais
Jei perduodami trys parametrai type()
, jis grąžina naujo tipo objektą.
Trys parametrai yra šie:
Parametras | apibūdinimas |
---|---|
vardas | klasės pavadinimas; tampa __name__ atributu |
pagrindai | poetas, kuriame nurodoma pagrindinė klasė; tampa __bases__ atributu |
diktuoti | žodynas, kuris yra vardų sritis su klasių apibrėžimais; tampa __dict__ atributu |
2 pavyzdys: sukurkite tipo objektą
o1 = type('X', (object,), dict(a='Foo', b=12)) print(type(o1)) print(vars(o1)) class test: a = 'Foo' b = 12 o2 = type('Y', (test,), dict(a='Foo', b=12)) print(type(o2)) print(vars(o2))
Rezultatas
('a': 'Foo', 'b': 12, '__module__': '__main__', '__dict__':, '__weakref__':, '__doc__': Nėra) ('a': 'Foo', 'b ': 12,' __module__ ':' __main__ ',' __doc__ ': Nėra)
Programoje mes naudojome Python vars () funkciją, kuri grąžina __dict__
atributą. __dict__
naudojamas objekto įrašomiems atributams saugoti.
Jei reikia, šiuos atributus galite lengvai pakeisti. Pvz., Jei jums reikia pakeisti __name__
o1 atributą į 'Z'
, naudokite:
o1 .__ vardas = 'Z'