Tipul Python ()

Funcția type () fie returnează tipul obiectului, fie returnează un nou obiect de tip pe baza argumentelor transmise.

type()Funcția are două forme diferite:

 tip (obiect) tip (nume, baze, dict)

type () Cu un singur parametru de obiect

Dacă este trecut un singur obiect type(), funcția își returnează tipul.

Exemplul 1: Obțineți tipul unui obiect

 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))

Ieșire

 

Dacă trebuie să verificați tipul unui obiect, este mai bine să utilizați funcția Python isinstance (). Acest lucru se datorează faptului că isinstance()funcția verifică și dacă obiectul dat este o instanță a subclasei.

type () Cu nume, baze și dict Parametri

Dacă sunt trecuți trei parametri type(), acesta returnează un obiect de tip nou .

Cei trei parametri sunt:

Parametru Descriere
Nume un nume de clasă; devine __name__atributul
baze un tuplu care detaliază clasa de bază; devine __bases__atributul
dict un dicționar care este spațiul de nume care conține definiții pentru corpul clasei; devine __dict__atributul

Exemplul 2: Creați un obiect de tip

 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))

Ieșire

 ('a': 'Foo', 'b': 12, '__module__': '__main__', '__dict__':, '__weakref__':, '__doc__': Niciuna) ('a': 'Foo', 'b ': 12,' __module__ ':' __main__ ',' __doc__ ': Niciuna)

În program, am folosit funcția Python vars () care returnează __dict__atributul. __dict__este folosit pentru a stoca atributele care se pot scrie.

Puteți schimba cu ușurință aceste atribute, dacă este necesar. De exemplu, dacă trebuie să schimbați __name__atributul lui o1 în 'Z', utilizați:

 o1 .__ nume = 'Z'

Articole interesante...