在Python中,我寫了這個功能來教自己如何**kwargs
作品的Python:在Python中,什麼決定了通過kwargs迭代時的順序?
def fxn(a1, **kwargs):
print a1
for k in kwargs:
print k, " : ", kwargs[k]
然後,我
fxn(3, a2=2, a3=3, a4=4)
調用此函數這裏是輸出,我的Python解釋器打印:
3
a3 : 3
a2 : 2
a4 : 4
爲什麼for循環之前的A2即使我喂A2到我的功能首先打印的A3的價值?
見我的答案是關於OrderedDict – PaulMcG
@PaulMcGuire:。見我的評論給你的答案 – Tadeck
難道你不會寫爲'fxn(3,** OrderedDict(etc ...'?哦,等等,我看到你改變了簽名來取代字典,而不是一組關鍵字參數。如果你要改變簽名,那麼你可能只是傳遞你的鍵值元組列表,但是OP真的想迭代** kwargs。 – PaulMcG