Python-Typ ()

Die Funktion type () gibt entweder den Typ des Objekts zurück oder gibt basierend auf den übergebenen Argumenten ein neues Typobjekt zurück.

Die type()Funktion hat zwei verschiedene Formen:

 Typ (Objekt) Typ (Name, Basen, Diktat)

type () Mit einem einzelnen Objektparameter

Wenn ein einzelnes Objekt übergeben wird type(), gibt die Funktion ihren Typ zurück.

Beispiel 1: Typ eines Objekts abrufen

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

Ausgabe

 

Wenn Sie den Typ eines Objekts überprüfen müssen, ist es besser, stattdessen die Funktion Python isinstance () zu verwenden. Dies liegt daran, dass die isinstance()Funktion auch prüft, ob das angegebene Objekt eine Instanz der Unterklasse ist.

type () Mit Namen, Basen und Diktatparametern

Wenn drei Parameter übergeben werden type(), gibt es einen neuen Typ Objekt.

Die drei Parameter sind:

Parameter Beschreibung
Name ein Klassenname; wird zum __name__Attribut
Basen ein Tupel, das die Basisklasse auflistet; wird zum __bases__Attribut
diktieren ein Wörterbuch, das der Namespace ist, der Definitionen für den Klassenkörper enthält; wird zum __dict__Attribut

Beispiel 2: Erstellen Sie ein Typobjekt

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

Ausgabe

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

Im Programm haben wir die Python vars () -Funktion verwendet, die das __dict__Attribut zurückgibt . __dict__wird verwendet, um die beschreibbaren Attribute des Objekts zu speichern.

Sie können diese Attribute bei Bedarf einfach ändern. Wenn Sie beispielsweise das __name__Attribut von o1 in ändern müssen 'Z', verwenden Sie:

 o1 .__ name = 'Z'

Interessante Beiträge...