我刚开始学习 Python,发现我可以将一个函数作为另一个函数的参数传递。如果我调用
我希望能够重复执行一个函数,而不管我传递了什么参数。
foo(bar())
,它不会将其作为函数指针传递,而是使用该函数的返回值。调用 foo(bar)
将传递函数本身,但这种方式无法传递其他额外的参数。如果我想要传递一个调用 bar(42)
的函数指针怎么办?我希望能够重复执行一个函数,而不管我传递了什么参数。
def repeat(function, times):
for calls in range(times):
function()
def foo(s):
print s
repeat(foo("test"), 4)
在这种情况下,函数foo("test")
应该连续被调用4次。有没有一种方法可以实现这个目标而不必将"test"传递给repeat
而是传递foo
?