English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
type()函数根据所传递的参数返回对象的类型或返回新的类型对象。
type()函数具有两种不同形式:
type(object) type(name, bases, dict)
如果将一个object传递给type(),该函数将返回其类型。
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))
Ausgaberesultat
<class 'dict'> <class 'Foo'> <class '__main__.Foo'>
Wenn Sie den Typ eines Objekts überprüfen müssen, ist es besser,Python instanceof() FunktionDenn die instanceof()-Funktion überprüft ebenfalls, ob das gegebene Objekt ein Subklasse-Objekt ist.
Wenn Sie drei Parameter an type() übergeben, wird ein neuertypeObjekt.
Diese drei Parameter sind:
Parameter | Beschreibung |
---|---|
name | Klassenname; wird zur __name__-Eigenschaft |
bases | Liste der Basisklassen als Tuple; wird zur __bases__-Eigenschaft |
dict | Diktatur, die den Namensraum enthält, in dem die Definition des Klassenschlüssels enthalten ist; wird zur __dict__-Eigenschaft |
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))
Ausgaberesultat
<class 'type'> {'b': 12, 'a': 'Foo', '__dict__': <attribute '__dict__' of 'X' objects>, '__doc__': None, '__weakref__': <attribute '__weakref__' of 'X' objects>} <class 'type'> {'b': 12, 'a': 'Foo', '__doc__': None}
Im Programm haben wirPython-vars() Funktionum die __dict__-Eigenschaft zurückzugeben. __dict__ wird verwendet, um die schreibbaren Eigenschaften eines Objekts zu speichern.
Sie können diese Eigenschaften leicht ändern, je nach Bedarf. Zum Beispiel, wenn Sie den Wert der __name__-Eigenschaft o1Ändern Sie 'Z', um zu verwenden:
o1__name = 'Z'