Funkcija type () ili vraća tip objekta ili vraća novi objekt tipa na temelju proslijeđenih argumenata.
type()
Funkcija ima dva različita oblika:
vrsta (objekt) vrsta (ime, baze, dikt)
type () s jednim parametrom objekta
Ako se prenese jedan objekt type()
, funkcija vraća svoj tip.
Primjer 1: Dobivanje vrste objekta
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))
Izlaz
Ako trebate provjeriti vrstu objekta, bolje je koristiti funkciju Python isinstance (). To je zato što isinstance()
funkcija također provjerava je li zadani objekt primjer podklase.
type () S imenom, osnovama i parametrima diktata
Ako se predaju tri parametra type()
, to vraća novi objekt tipa .
Tri su parametra:
Parametar | Opis |
---|---|
Ime | naziv razreda; postaje __name__ atribut |
baze | korpica koja daje osnovnu klasu; postaje __bases__ atribut |
diktat | rječnik koji je prostor imena koji sadrži definicije za tijelo klase; postaje __dict__ atribut |
Primjer 2: Stvorite objekt tipa
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))
Izlaz
('a': 'Foo', 'b': 12, '__module__': '__main__', '__dict__':, '__weakref__':, '__doc__': Nema) ('a': 'Foo', 'b ': 12,' __module__ ':' __main__ ',' __doc__ ': Nema)
U programu smo koristili funkciju Python vars () koja vraća __dict__
atribut. __dict__
koristi se za pohranu atributa za upisivanje u objekt.
Te atribute možete lako promijeniti ako je potrebno. Na primjer, ako trebate promijeniti __name__
atribut o1 u 'Z'
, upotrijebite:
o1 .__ name = 'Z'