【问题标题】:How to construct dynamic function invocation with variable arguments in Python如何在 Python 中使用可变参数构造动态函数调用
【发布时间】:2011-11-13 23:10:47
【问题描述】:

我正在尝试将对具有可变参数列表的操作的调用包装到具有固定参数的通用函数中,如下所示:

def vectorizeIt(args, op)

op 是一个具有可变数量参数的函数,args 是一个包含我想传递给它的参数的列表。例如,如果len(args) == 3,那么我想像这样调用opop(args[0],args[1],args[2])。据我所知,op 需要像这样显式传递参数;我不能将参数列表更改为单个列表或字典。任何有关如何执行此操作的建议都表示赞赏。

【问题讨论】:

    标签: python argument-passing variadic-functions


    【解决方案1】:

    使用"splat" operator* 将任意数量的参数应用于op

    def vectorizeIt(args, op):
        op(*args)
    

    参考:

    【讨论】:

    • 谢谢。看来我可以一起跳过vectorizeIt
    猜你喜欢
    • 2012-02-02
    • 2012-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多