我想將一個字典傳遞給對象的構造函數以用作kwargs。傳遞字典給構造函數?
很明顯:
foo = SomeClass(mydict)
只是簡單地傳遞一個參數,而不是字典的內容。唉:
foo = SomeClass(kwargs=mydict)
這似乎更合理也不起作用。我錯過了什麼?
我想將一個字典傳遞給對象的構造函數以用作kwargs。傳遞字典給構造函數?
很明顯:
foo = SomeClass(mydict)
只是簡單地傳遞一個參數,而不是字典的內容。唉:
foo = SomeClass(kwargs=mydict)
這似乎更合理也不起作用。我錯過了什麼?
用途:
foo = SomeClass(**mydict)
這將解開字典值,並將其傳遞給函數。
例如:
mydict = {'a': 1, 'b': 2}
SomeClass(**mydict) # Equivalent to : SomeClass(a=1, b=2)
試試這個: SomeClass(**mydict)
要通過字典來你必須通過引用這樣做的一個構造函數,它是用**
它前面,就像這樣:
foo = SomeClass(**mydict)
更多信息:HTTP ://docs.python.org/tutorial/controlflow.html#keyword-arguments – tokland 2011-03-18 16:57:31
來自未來的問候!對不起,用了四年的時間來記錄這個答案:^) – mikemaccana 2015-04-28 15:55:20