您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在Python中创建一个空对象

在Python中创建一个空对象

您可以使用type动态创建一个新类,然后实例化它。像这样:

>>> t = type('test', (object,), {})()
>>> t
<__main__.test at 0xb615930c>

要键入的参数是:类名,基类的元组和对象的字典。可以包含函数(对象的方法)或属性

您实际上可以将第一行缩短为

>>> t = type('test', (), {})()
>>> t.__class__.__bases__
(object,)

因为认情况下,type创建从对象继承的新样式类。

type在Python中用于元编程

但是,如果您只想创建对象的实例。然后,只需创建它的一个实例。就像lejlot暗示的那样。

像这样创建一个新类的实例有一个重要的区别,可能有用。

>>> a = object()
>>> a.whoops = 1
Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
AttributeError: 'object' object has no attribute 'whoops'

如:

>>> b = type('', (), {})()
>>> b.this_works = 'cool'
>>>
python 2022/1/1 18:31:29 有213人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶