2012-11-30 48 views
0

比方說,我有3點空字典:編輯多本字典有一個單一的功能:

dic1 = {} 
dic2 = {} 
dic3 = {} 

我要添加到這些字典全部一次,使用的功能。做到這一點最簡單的方法是什麼,到目前爲止,我有:

def fillDics(x): 
    count = 0 
    for i in range(0, x): 
      if count==0: 
        dic1[legendaryfn[count]] = 0 
        dic1[legendary[count]] = 1 
        count+=1 

      if count==1: 
        dic2[legendaryfn[count]] = 0 
        dic2[legendary[count]] = 1 
        count+=1 

等等,這似乎非常低效。我錯過了什麼?我很新的編程,所以我會很感激你可以提供任何幫助。

+1

什麼'i'在列表'因爲我?如果count> 1會發生什麼? –

+0

它只是遍歷範圍。 –

+0

那麼,我知道'range()'做了什麼。不過,我很好奇你打算怎樣處理它。函數中不使用結果'i'值。 –

回答

0

就是這樣完成的。

for myDict in [dict1, dict1, dict3]: 
    myDict[key] = value 

此外,如果數值是有意義的,你可以添加枚舉:

for idx, myDict in enumerate([dict1, dict2, dict3]): 
    myDict['position'] = idx 

或者你有什麼。

+0

謝謝,非常有幫助。 –

0

您可以在範圍(0,X)`使用字典

def fillDics(x): 
    for d in [dict1,dict2,dict3]: 
     d[legendaryfn[count]] = 0 
     d[legendary[count]] = 1 
相關問題