You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python内置object()创建对象及其实用场景

关于Python中object()的使用说明

1. 如何使用object()创建对象?

直接调用object()函数即可创建实例,它不接受任何参数,用法非常简单:

# 创建一个object实例
obj = object()

这个实例仅拥有Python所有对象共有的基础方法(比如__repr__()、__eq__()),无法直接为它添加自定义属性(尝试obj.name = "test"会抛出AttributeError,因为object实例没有__dict__存储自定义属性)。你可以试试这些基础操作:

print(obj)  # 输出类似 <object object at 0x1007a12d0>
another_obj = object()
print(obj.__eq__(another_obj))  # 输出False,因为是两个不同的实例

2. object()的使用场景

object()在日常业务代码中很少直接用到,但在特定场景下有其价值:

  • 极简占位符:当你需要一个无任何额外功能的对象占位置时,比如字典里的默认值、测试中的极简实例:
    # 用object()作为字典占位值
    placeholder_map = {"pending": object(), "completed": object()}
    
  • 测试基础对象行为:验证仅依赖Python通用对象方法的逻辑,或者测试类型检查逻辑(所有Python对象都是object的实例)。
  • 类设计中的兼容/明确继承:在Python 3中所有类默认继承object,但显式写class MyClass(object):可以明确类的继承关系,也能兼容Python 2的旧式类写法;在元类或高级类结构设计中,有时需要基于最基础的object构建类。
  • 唯一标记对象:不同的object()实例是唯一不相等的(除非是同一引用),且无法修改属性,可作为状态机中的特殊状态标识、函数返回的唯一标记值等。

内容的提问来源于stack exchange,提问作者Super Kai - Kazuya Ito

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 13:30:53