例如,当我有:
def function(text):
print(text)
mylist = [function('yes'),function('no')]
mylist[0]
它只会打印yes和no,并且不会执行任何操作mylist[0]
。
我希望它能够使用列表中的参数调用该函数,而不必在程序启动时运行该函数。这可能吗?
听起来您想存储预先绑定了参数的函数。您可以使用functools.partial
带有已定义的部分或全部参数的函数:
from functools import partial
def f(text):
print(text)
mylist = [partial(f, 'yes'), partial(f,'no')]
mylist[0]()
# yes
mylist[1]()
# no
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句