我知道这是一个基本问题,但我不知道如何回答。考虑以下代码示例:
def a_function(someval=None):
if a_function:
print(a_function)
else:
print("None")
foo = a_function
print(foo(1))
None
我知道我可以将一个函数(或任何东西,真的)分配给一个变量,因为函数是一流的异议,而且我可以通过 foo() 调用该函数。
问题:如果参数已分配给变量,如何将参数传递给函数?
在上面的例子中,很明显 (1) 没有被传递给 a_function()。
感谢您对此的帮助。
请您参考如下方法:
我想你问的是 functools.partial :
from functools import partial
def a_function(someval=None):
if someval:
print(someval)
else:
print("None")
foo = partial(a_function, 1)
foo() # prints 1
foo 这里是一个部分函数,它用一个特定的参数“卡住”了 a_function 函数。
