以编程方式在Python中传递未知数量的参数

emc*_*cee 3 python

我想要一个简单的方法来插入一个函数和参数,以便稍后执行,所以我可以有一种包装它.

在这种情况下,我想用它来进行基准测试,例如:

def timefunc(fn, *args):
   start = time.clock()
   fn(args)
   stop = time.clock()
   return stop - start
Run Code Online (Sandbox Code Playgroud)

如何传递参数数量未知的参数?如何找到参数个数?一旦我知道参数的数量,我怎么能调用该函数?

Mat*_*rog 8

只需调用这个函数:

fn(*args)
Run Code Online (Sandbox Code Playgroud)

  • 为了完整性,即使你没有问过它,请注意,如果你的函数接受关键字参数`timefunc(fn,*args,**kwargs)`,你可以用同样的方式将它们插入另一个函数:`fn(*args,**kwargs)` (5认同)
  • 甜刺山柑很快。只是尝试,它的工作。谢谢! (2认同)