Python type()-Funktion

Python 内置函数Python Built-in-Funktionen


Beschreibung

Die type()-Funktion gibt den Typ des Objekts zurück, wenn Sie nur den ersten Parameter übergeben, und gibt mit drei Parametern ein neues Typobjekt zurück.

Unterschied zwischen isinstance() und type():

  • type() betrachtet eine Unterklasse nicht als Oberklassentyp; die Vererbung wird nicht berücksichtigt.

  • isinstance() betrachtet eine Unterklasse als Oberklassentyp; die Vererbung wird berücksichtigt.

Wenn Sie feststellen möchten, ob zwei Typen identisch sind, wird isinstance() empfohlen.

Syntax

Das Folgende ist die Syntax der Methode type():

type(object)
type(name, bases, dict)

Parameters

  • name -- Der Name der Klasse.
  • bases -- Ein Tupel von Basisklassen.
  • dict -- Ein Dictionary, die im Namensraum der Klasse definierten Variablen.

Rückgabewert

Mit einem Parameter gibt es den Objekttyp zurück; mit drei Parametern gibt es ein neues Typobjekt zurück.


Beispiele

Das Folgende zeigt Beispiele für die Verwendung der Funktion type():

# Beispiel mit einem Parameter >>> type(1) <type 'int'> >>> type('Beispiel') <type 'str'> >>> type([2]) <type 'list'> >>> type({0:'zero'}) <type 'dict'> >>> x = 1 >>> type( x ) == int # Prüfen, ob die Typen gleich sind True # Drei Parameter >>> class X(object): ... a = 1 ... >>> X = type('X', (object,), dict(a=1)) # Einen neuen Typ X erstellen >>> X <class '__main__.X'>

Unterschied zwischen type() und isinstance():

class A: pass class B(A): pass isinstance(A(), A) # gibt True zurück type(A()) == A # gibt True zurück isinstance(B(), A) # gibt True zurück type(B()) == A # gibt False zurück

Python 内置函数Python Built-in-Funktionen

Andere Erweiterungen