将元组传递给接受 *args 和 **kwargs 的函数

Pass tuple to function that takes *args and **kwargs

我有两个功能:

def foo(*args, **kwargs):
    pass

def foo2():
    return list(), dict()

我希望能够将来自 foo2 的列表和字典作为 foo 中的 args 和 kwargs 传递,但是当我像这样使用它时

foo(foo2())

foo(*foo2())

foo2 返回的元组被分配给 *args。 我该如何正确操作?

你必须解压你的foo2()参数为两个名字第一个,你不能直接使用两个 return 值作为 *args**kwargs 使用现有语法。

使用:

args, kwargs = foo2()
foo(*args, **kwargs)