在python中将函数作为参数传递

Moh*_*hit 3 python

我想试试这个问题.

所以这就是我想要做的:我有三个功能.比如说,foo,bar和foo_bar

def foo_bar(function):
   for i in range(20):
      function # execute function
def foo(someargs):
   print "hello from foo"

def bar(someargs):
   print " hello from bar"
Run Code Online (Sandbox Code Playgroud)

当我这样做的时候 foo_bar(foo) # how to specify arguments to foo??

我期待着我看到了"hello from foo" 20 times吗?

但是因为我没有看到这一点......我显然不太清楚这一点吗?

Mar*_*cin 5

你没有调用这个函数.您可以使用括号function在名称后面调用一个函数,并在这些括号中放置您需要的任何参数:function()

function(function)
Run Code Online (Sandbox Code Playgroud)

我通过函数作为参数传递给自己,因为你foobar采取论证,但也无可奈何他们.