Funktsioon type () tagastab kas objekti tüübi või tagastab edastatud argumentide põhjal uue tüüpi objekti.
type()Funktsioon on kaks eri vormides:
type (objekti) tüüp (nimi, alused, dict)
type () ühe objekti parameetriga
Üksiku objekti edastamise type()korral tagastab funktsioon oma tüübi.
Näide 1: saada objekti tüüp
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))
Väljund
Kui peate kontrollima objekti tüüpi, on parem kasutada selle asemel funktsiooni Python isinstance (). Sellepärast, et isinstance()funktsioon kontrollib ka seda, kas antud objekt on alamklassi eksemplar.
type () koos nime, aluste ja dikteeritud parameetritega
Kui edastatakse kolm parameetrit type(), tagastab see uut tüüpi objekti.
Kolm parameetrit on:
| Parameeter | Kirjeldus |
|---|---|
| nimi | klassi nimi; saab __name__atribuudiks |
| alused | tup, mis nimetab põhiklassi; saab __bases__atribuudiks |
| dikteerima | sõnastik, mis on klassiruumi määratlusi sisaldav nimeruum; saab __dict__atribuudiks |
Näide 2: Tüüpobjekti loomine
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))
Väljund
('a': 'Foo', 'b': 12, '__module__': '__main__', '__dict__':, '__weakref__':, '__doc__': Puudub) ('a': 'Foo', 'b ': 12,' __module__ ':' __main__ ',' __doc__ ': pole)
Programmis oleme kasutanud funktsiooni Python vars (), mis tagastab __dict__atribuudi. __dict__kasutatakse objekti kirjutatavate atribuutide salvestamiseks.
Vajadusel saate neid atribuute hõlpsasti muuta. Näiteks kui peate muutma __name__o1 atribuudi väärtuseks 'Z', kasutage:
o1 .__ nimi = 'Z'








