【发布时间】:2016-01-10 13:20:39
【问题描述】:
所以我正在研究基于文本的菜单的类结构。我需要在实际运行代码之前创建菜单并设置操作。因此,为了避免过早调用该函数,我创建了一个名为 Run 的类,它采用给定的函数并运行它。我的问题是我不知道应该如何处理函数的参数。到目前为止,我有什么不起作用的是:
class Run:
def __init__(self, func):
self.func = func
def execute(self):
print('Running')
self.func
def foo(*args):
print(*args)
baz = Run(foo('bar'))
baz.execute()
为了清楚起见,我首先希望函数在我运行 baz.execute() 时运行
【问题讨论】:
-
你为什么不直接使用
functools.partial?您当前的尝试是调用foo,然后将结果传递给Run.__init__,因此注定会失败。 -
我不知道
functools.partial你能详细说明吗? -
...那你为什么不通过我提供的链接阅读它?
-
我对 python 还很陌生,文档虽然准确,但并不总是对新手最友好:(
-
但是,尽你所能地阅读它,你至少应该能够问一个比 “你能详细说明吗” 更具体的问题,或者,上帝保佑,去吧尝试一下。
标签: python function class python-3.x menu