2017-04-19 51 views
1

我想通過使用for循環創建字典。我有一個有序的列表,我試圖將列表中的值與有序的數字進行匹配。例如: {0:100, 1:423, 2:434}Python - 嘗試通過for循環創建字典

我只是有麻煩的for循環。

list = [102, 232, 424] 
count = 0 
d = {} #Empty dictionary to add values into 

for i in list: 
    #dictionary key = count 
    #key.append(i) 
    count+=1 

所以在for循環基本上我想使計數變量的關鍵,而在列表作爲值的相應項目。然後我會加一個數來計算,然後繼續。另外我很抱歉,如果我的代碼在for循環中有點不清楚。這不是實際的代碼,而只是我所尋找的一般概念。誰能幫我?謝謝。

回答

4

你做dictionary[key] = item,所以你的情況,你會怎麼做設定在字典中的項目:

list = [102, 232, 424] 
count = 0 
d = {} #Empty dictionary to add values into 

for i in list: 
    d[count] = i 
    count+=1 
+1

可替代地,對於'IDX,項目在枚舉列表:d [索引] = item' – FCo

+3

另外可替換地,字符'D = {K:v對於K,V在枚舉(列表)}' – Alden

0

您可以在同一行做到不使用For循環或計數器變量:

dict(zip(range(0, len(list)), list)) 
0

您可以使用枚舉:

list = [102, 232, 424] 
d = {} 

for a, b in enumerate(list): 
    d[a] = b 

,或者使用字典comprehe nsion:

d = {a:b for a, b in enumerate(list)}