【发布时间】:2013-12-29 15:06:04
【问题描述】:
是的,我想使用函数生成函数。
在如何干净利落地让函数 1 将参数传递给函数 2(在函数 1 中定义)我遇到了困难。
def function1(*args):
def function2(*args):
print "I will do some stuff or whatever"
return function2
new_function = function1()
new_function()
------->I will do some stuff or whatever
无论如何,我不知道如何将新参数传递给 function2,然后使用 function1 传递 new_function。
简而言之,我希望能够做到这一点:
new_function = function1(arg1, arg2, arg3)
并且将 arg1、arg2 和 arg3 传递到 new_function 但我无法正确获取结构。
【问题讨论】:
-
你写的是装饰器,试试这个:Python decorators in 12 easy steps
-
@BurhanKhalid 这样的函数可以用作装饰器(实际上这是制作装饰器的最简单方法),但 OP 对应用装饰器语法没有表现出任何兴趣。也就是说,本教程在这里仍然适用和有用。 :) (特别是,装饰涉及将函数作为参数传递给外部
function1,这是 OP 可能会遇到的另一个概念级别。)
标签: python function arguments argument-passing