Python:可以在另一个函数的参数列表中定义函数吗?

时间:2011-10-10 13:12:15

标签: python function argument-passing

有没有办法在python中实现这样的东西?

another_function( function(x) {return 2*x} )

2 个答案:

答案 0 :(得分:9)

是:

another_function( lambda x: 2*x )

要明确:这是在调用another_function时发生的,而不是在定义时。

答案 1 :(得分:0)

def another_function( function=lambda x: 2*x ):
    print(function(10))  #an example

我不确定您发布的示例代码会发生什么,但如果您拨打another_function,则会显示解决方案,它会调用function(10)并打印20。

更重要的是,您无法致电another_function(7)并获取14,因为7将被分配到function7(10)' will get you TypeError:'int'对象是不可赎回的。