python中对象创建的差异

时间:2019-08-31 11:48:39

标签: python

两者之间有什么区别

object = Class()

object = Class

由于以上两种方法对我都有效,而在python 2中却没有给出任何错误

1 个答案:

答案 0 :(得分:0)

类是Python中的一流对象(无双关语)。 名称 Class表示类型为type的值;调用type值时,它将返回该类型的实例。

>>> class Class:
...   pass
...
>>> type(Class)
<class 'type'>

在您的第一个示例中,名称object被分配了类型为Class的值。

>>> object = Class(); object.__class__ is Class
True

在第二个示例中,名称object本身的类型为Class

>>> object = Class; object is Class
True