我正在尝试在 python 中开发远程过程调用框架,但 exec() 函数有问题。简化场景:
class Example:
def __init__():
pass
def add(self, string):
return anothermodule.func(self,string)
class Framework:
def function_call():
exec("a = exampleObject.add(string)")
似乎不可能用 exec() 调用一个内部有另一个函数的函数。我试过了,但我总是得到“错误数量的参数”。在调试模式下,我什至没有被转移到“添加”功能以查看发生了什么。
但是,这可以正常工作。
class Example:
def __init__():
pass
def add(self, x):
return x + 3
class Framework:
def function_call():
exec("a = exampleObject.add(8)")
def main():
framework = Framework()
framework.function_call()
exampleObject 是根据另一个方法中提供的参数在另一个类中动态创建的。它只是 Example 类的实例。这只是我想要实现的简化版本。它不代表我的确切代码。我想说的是,我的 exec() 仅适用于简单的操作,并且无法在原始方法中调用另一种方法。
波斯汪
相关分类