这是我的想法:从一个简单的对象开始:
class dynamicObject(object):
pass
并且能够动态添加预先编写的方法:
def someMethod(self):
pass
这样我就可以做到这一点:
someObject = dyncamicObject()
someObject._someMethod = someMethod
someObject._someMethod()
问题是,它希望我指定 _someMethod() 的 self 部分,使其看起来像这样:
someObject._someMethod(someObject)
这似乎有点奇怪,因为当方法“附加”到对象时不是自我暗示的吗?
我是 Python 思维方式的新手,我试图摆脱与 C# 等语言相同的思维过程,所以这里的想法是能够通过选择我想要添加的验证方法来创建一个用于验证的对象而不是制作某种对象层次结构。我认为 Python 的“自我”想法会对我有利,因为我认为对象会隐含地知道将自己发送到附加到它的方法中。
需要注意的一件事是,该方法未以任何方式附加到对象(完全不同的文件),所以也许这就是问题所在?也许通过自己定义方法, self 实际上是有问题的方法,因此不能隐含为对象?