我有这个函数f(x,a,b):
def f(x, a, b):
return a*x + b
我必须将此函数传递给另一个预先设置了“a”和“b”的函数,例如:
^{pr2}$我知道有其他方法可以解决这个特殊的问题,但是这只是一个例子,不是真正的问题,我想知道是否有什么方法可以像这样“print2(f(,1,1))”。换言之,有没有什么方法可以做到这一点,而不必把争论贯穿始终?就像
def print3(f, a, b):
x = np.linspace(0, 1, 10)
print(f(x, a, b))
print3(f, a, b)
lambda
和{lambda
和{您可以使用functools.partial来实现这一点!在
关于使用partial可以获得的许多好处,请参见this。在
简而言之:
还有更多。。。在
您可以将其包装在另一个函数中:
使外部函数的参数成为仍然需要提供的任何数据,并传递该数据。在
有人告诉我,这种方法在Python中并不理想。@巴雷尔的回答可能更为恰当。在
相关问题 更多 >
编程相关推荐