【发布时间】:2012-05-04 03:35:26
【问题描述】:
我正在为 Squish 自动化工具使用 Python 语言。这个工具用一些自定义对象和函数扩展了 python。这就是他们在manual 中所说的:
Squish 的 Python 特定扩展模块由 在内部执行等效于以下语句:
Python import test import testData import object import objectMap import squishinfo from squish import *这意味着没有必要自己导入它们,除非你 正在开发自己的独立模块。
这样做他们会自动重新定义object(到this),所以我尝试做New-Style Classes(比如class NewClass(object):)给我一个错误:
TypeError:调用元类库时出错。
module.__init__()最多接受 2 个参数(给定 3 个)
所以我正在尝试找回object。
阅读the amazing article about metaclasses 后,我尝试使用以下代码获取object:
class OrigObject:
__metaclass__ = type
class NewClass(OrigObject):
pass
我的问题是:这与从原始object 类继承相同吗?
更新:我只能使用 Python 2.4(如果重要的话)
谢谢!
【问题讨论】:
标签: python metaclass python-datamodel