我的代码中定义了几个函数,我希望能够在我的一个类中调用它们。 我想将他们的一个名字作为参数传递,这样我就可以选择正确的函数来调用我的班级。
我在互联网上寻找这样的东西但我发现的是如何调用在同一个或另一个类中的类中定义的函数。我无法在班级中定义我的函数,因为它们也调用其他函数
所以不是太多,但我的代码是:
class _fonction_use_:
def __init__(self,pos,function):
self.pos=pos
self.function=function
其中"功能"将是我在课堂外定义的一个函数的名称。
所以,如果fonction_use属于这个类,我想要像fonction_use.function这样的东西来返回我之前赋予它的函数。
答案 0 :(得分:2)
由于函数是第一类对象,因此可以将它们直接传递给您的类。
def somefunc():
pass # do something
class MyClass(object):
def __init__(self, pos, function):
self.pos = pos
self.function = function
myclass = MyClass(0, somefunc)