现在,我正在使用闭包来生成此简化示例中的函数:
def constant_function(constant):
def dummyfunction(t):
return constant
return dummyfunction
然后将这些生成的函数传递到自定义类的初始化方法,该方法将它们存储为实例属性。缺点是使类实例不容易被打扰。所以我想知道是否有一种方法来创建避免关闭的函数生成器。
最佳答案
您可以使用可调用的类:
class ConstantFunction(object):
def __init__(self, constant):
self.constant = constant
def __call__(self, t):
return self.constant
def constant_function(constant):
return ConstantFunction(constant)
然后,函数的关闭状态将转移到实例属性。
关于python - 在python中生成不带闭包的函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15028782/