将dict传递给构造函数?

mik*_*ana 15 python constructor dictionary

我想将一个dict传递给一个对象的构造函数以用作kwargs.

明显:

foo = SomeClass(mydict)
Run Code Online (Sandbox Code Playgroud)

简单地传递一个参数,而不是dict的内容.唉:

foo = SomeClass(kwargs=mydict)
Run Code Online (Sandbox Code Playgroud)

这似乎更明智也不起作用.我错过了什么?

mou*_*uad 29

使用 :

foo = SomeClass(**mydict)
Run Code Online (Sandbox Code Playgroud)

这将解压缩dict值并将它们传递给函数.

例如:

mydict = {'a': 1, 'b': 2}

SomeClass(**mydict) # Equivalent to : SomeClass(a=1, b=2)
Run Code Online (Sandbox Code Playgroud)

  • 来自未来的问候!抱歉花了四年时间才将其标记为已接受的答案:^) (2认同)