Python 类型对象
在 Python 中,一切皆为对象,包括类。所有类都是名为“type”的类的实例。“type”对象也是 type 类的实例。您可以通过检查类对象的 __bases__ 属性来检查类的继承层次结构。type() 方法返回作为参数传递的参数(对象)的类类型。如果将单个参数 type(obj) 传递给 type 方法,它将返回给定对象的类型。如果传递三个参数 type(name, bases, dict),它将返回一个新的类型对象。
使用 type()
让我们看看最常用的数据类型的类。在下面的程序中,我们初始化一些变量,然后使用 type() 来确定它们的类。
示例
# Some variables a = 5 b = 5.2 c = 'hello' A = [1,4,7] B = {'k1':'Sun','K2':"Mon",'K3':'Tue'} C = ('Sky','Blue','Vast') print(type(a)) print(type(b)) print(type(c)) print(type(A)) print(type(B)) print(type(C))
输出
运行以上代码将得到以下结果:
<class 'int'> <class 'float'> <class 'str'> <class 'list'> <class 'dict'> <class 'tuple'>
类的类型
如果我们深入了解以上类的类型,我们会发现它们都属于名为“type”的类。
示例
print(type(int)) print(type(dict)) print(type(list)) print(type(type))
输出
运行以上代码将得到以下结果:
<class 'type'> <class 'type'> <class 'type'> <class 'type'>
创建新的对象类型
我们也可以使用与上述类似的方法来创建新对象。在这里,我们传递三个参数来创建新的类型对象。
示例
Object1 = type('A', (object,), dict(a='Hello', b=5)) print(type(Object1)) print(vars(Object1)) class NewCalss: a = 'Good day!' b = 7 Object2 = type('B', (NewCalss,), dict(a='Hello', b=5)) print(type(Object2)) print(vars(Object2))
输出
运行以上代码将得到以下结果:
<class 'type'> {'a': 'Hello', 'b': 5, '__module__': '__main__', '__dict__': <attribute '__dict__' of 'A' objects>, '__weakref__': <attribute '__weakref__' of 'A' objects>, '__doc__': None} <class 'type'> {'a': 'Hello', 'b': 5, '__module__': '__main__', '__doc__': None}
广告