是否可以向对象类添加一个方法,并在所有对象上使用它?
最佳答案
在 Python 中,属性是使用字典实现的:
>>> t = test()
>>> t.__dict__["foo"] = "bla"
>>> t.foo
'bla'
但对于“对象”,它使用“dictproxy”作为接口(interface)来防止此类赋值:
>>> object.__dict__["test"] = "test"
TypeError: 'dictproxy' object does not support item assignment
所以不,你不能。
注意:您也不能直接修改元类类型。但是由于 Python 非常灵活,我相信大师会找到一种方法来实现您想要的。这里有黑巫师吗:-)?
关于python - 对象类别覆盖或修改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/790560/