如何在动态Python类型创建期间定义函数
(这是在Python3 btw中) 好的,假设我们使用如何在动态Python类型创建期间定义函数,python,python-3.x,dynamic-programming,metaclass,class-method,Python,Python 3.x,Dynamic Programming,Metaclass,Class Method,(这是在Python3 btw中) 好的,假设我们使用type()作为类构造函数: X=type('X',(),{}) 我试图找到的是type()如何接受函数作为参数并允许其可调用 我正在寻找一个如何实现这一目标的例子。大致如下: >>> X = type('X', (), {'name':'World', 'greet':print("Hello {0}!".format(name))} >>> X.greet() Hello World! 您需要传递函数
type()
作为类构造函数:
X=type('X',(),{})
我试图找到的是type()
如何接受函数作为参数并允许其可调用
我正在寻找一个如何实现这一目标的例子。大致如下:
>>> X = type('X', (), {'name':'World', 'greet':print("Hello {0}!".format(name))}
>>> X.greet()
Hello World!
您需要传递函数。在代码中,调用函数并传递结果 尝试:
这与动态规划有什么关系?@juanpa.arrivillaga我的整个项目都与动态规划有关。我选择了围绕问题背后的主要目的的标签,以便吸引那些能够以这种心态回答问题的人。哦,那么功能需要事先定义吗?这有助于这一部分,现在我必须找到一种动态定义函数的方法。很可能是使用
eval()
我敢肯定
def print_hello(self):
print("Hello {0}!".format(self.name))
X = type('X', (), {'name':'World', 'greet': print_hello})