A type () függvény vagy az objektum típusát adja vissza, vagy az átadott argumentumok alapján új típusú objektumot ad vissza.
A type()
függvénynek két különböző formája van:
type (objektum) type (név, alapok, dict)
type () Egyetlen objektum paraméterrel
Ha egyetlen objektumot továbbítanak neki type()
, akkor a függvény visszaadja a típusát.
1. példa: Az objektum típusának beolvasása
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))
Kimenet
Ha ellenőriznie kell egy objektum típusát, akkor inkább a Python isinstance () függvényt használja. Ez azért van, mert a isinstance()
függvény azt is ellenőrzi, hogy az adott objektum az alosztály példánya.
type () Névvel, alapokkal és diktált paraméterekkel
Három paraméter type()
átadásakor új típusú objektumot ad vissza .
A három paraméter a következő:
Paraméter | Leírás |
---|---|
név | osztály neve; __name__ attribútummá válik |
bázisok | az alaposztályt felsoroló duplát; __bases__ attribútummá válik |
diktálja | egy szótár, amely az osztálytörzs definícióit tartalmazó névtér; __dict__ attribútummá válik |
2. példa: Hozzon létre egy típusú objektumot
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))
Kimenet
('a': 'Foo', 'b': 12, '__module__': '__main__', '__dict__':, '__weakref__':, '__doc__': Nincs) ('a': 'Foo', 'b ': 12,' __module__ ':' __main__ ',' __doc__ ': Nincs)
A programban a Python vars () függvényt használtuk, amely visszaadja az __dict__
attribútumot. __dict__
az objektum írható attribútumainak tárolására szolgál.
Szükség esetén könnyedén megváltoztathatja ezeket az attribútumokat. Például, ha módosítania kell __name__
az o1 attribútumát a következőre 'Z'
:
o1 .__ név = 'Z'