Python类型对象

Python中的所有内容都是一个包含类的对象。所有类都是名为“ type”的类的实例。type对象也是type class的实例。您可以通过检查类对象的__bases__属性来检查类的继承层次结构。type()方法返回argument(object)传递的类的类型,因为将parameter.If单个参数type(obj)传递给类型方法,它返回给定对象的类型。如果type(name, bases, dict)传递了三个参数,它将返回一个新的类型对象。

使用 type()

让我们看一下最常用的数据类型的类。在下面的程序中,我们初始化一些变量,然后使用type()来确定它们的类。

例子

# 一些变量
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}