使用参数列表调用可调用的python
简单问题:如何将任意参数列表传递给python可调用对象 假设我想从命令行调用函数,如下所示:使用参数列表调用可调用的python,python,callable,Python,Callable,简单问题:如何将任意参数列表传递给python可调用对象 假设我想从命令行调用函数,如下所示: my_script.py foo hello world 使用以下脚本: import myfuncs f = getattr(myfuncs, sys.args[1]) if f and callable(f): # This is the bit I don't know. I effectively want f(sys.args[2:]) 我肯定有办法做到这一点,但我一定忽略了它。
my_script.py foo hello world
使用以下脚本:
import myfuncs
f = getattr(myfuncs, sys.args[1])
if f and callable(f):
# This is the bit I don't know. I effectively want f(sys.args[2:])
我肯定有办法做到这一点,但我一定忽略了它。您正在寻找的。例如,您正在寻找的
f(*sys.argv[2:])
。例如,f(*sys.argv[2:])
是的,请查看文档中的部分
对于您的特殊用途,它可以是这样的
def f(a, b, c):
print a, b, c
stuff = ['f',2,3,4]
f(*stuff[1:]) ### equivalent to f(2,3,4)
是的,查看文档中的部分 对于您的特殊用途,它可以是这样的
def f(a, b, c):
print a, b, c
stuff = ['f',2,3,4]
f(*stuff[1:]) ### equivalent to f(2,3,4)
谢谢,一旦你知道这些东西叫什么,它们总是简单的,嗯?谢谢,一旦你知道它们叫什么,这些东西总是简单的,嗯?