如何在Python中将字符串用作函数参数并使用可变数量的参数

时间:2018-12-21 16:42:42

标签: python ipywidgets

我有一个名为filter的函数,该函数接受name = value格式的许多参数。我有2个列表:名称和值(我们分别命名为x和y),我需要能够将它们传递给函数。

当我像下面的示例中那样仅传递字符串时,它给我一个错误:

class DefaultController extends AbstractController
{
    public function index(SerializerInterface $serializer)
    {
        // keep reading for usage examples
    }
}

SyntaxError:关键字不能是表达式

对于列表的大小,我还需要能够任意传递。我该如何进行这项工作?

2 个答案:

答案 0 :(得分:1)

使用**kwargs

kwargs = {x[0]: y[0], x[1]: y[1]}
filter(**kwargs)

答案 1 :(得分:0)

您可能不想拥有一个名为filter的函数,因为它将覆盖内置的python filter函数。但是,否则使用*args and **kwargs进行阅读,听起来就像您所需要的。