python - python中的对象创建差异
问题描述
有什么区别
object = Class()
object = Class
由于上述两种方法都对我有用,而在 python 2 中没有给出任何错误
解决方案
类是 Python 中的一等对象(不是双关语)。该名称 Class
指的是一个类型为type
;的值。当一个type
值被调用时,它返回该类型的一个实例。
>>> class Class:
... pass
...
>>> type(Class)
<class 'type'>
在您的第一个示例中,该名称object
被分配了一个 type 的值Class
。
>>> object = Class(); object.__class__ is Class
True
在您的第二个示例中,名称object
被分配了类型Class
本身。
>>> object = Class; object is Class
True
推荐阅读
- python - Python 使用图像元数据写入 SQL 数据框
- php - 我总是在布尔值上调用成员函数 fetchAll()
- json - 从 localhost 对象获取数据发生错误
- c# - 将字节数组数据作为图像嵌入电子邮件
- python - Django Keycloak 集成流程
- javascript - 在 setInterval 上防止 i 帧刷新
- c# - 更改用 C# 编写的 tts 程序的输出设备在 Windows 10 中不起作用
- javascript - Handlebars #each 块不起作用 - “this”范围仍然是全局范围
- python - AttributeError:“列表”对象没有属性“fechas”
- reactjs - React JS - 显示 json 数组中的值的正确方法