2016-03-16 37 views
-2

我要附加到字典作爲第二值的第二值以字典簡單在字典蟒增加值

ret = {} 
third_value_list =[0,1] 
for i in third_value_list: 
    #print i 
    num_list = [1,2] 
    val_list = [0,1] 
    dict1 = dict(zip(num_list,val_list)) 
    print dict1 
    num_list2= [1,2] 
    val_list2 = [0,6] 
    dict2 =dict(zip(num_list2,val_list2)) 
    print dict2 
if set(dict2.items()) - set(dict1.items()): 
    print 'true' 
    a = set(dict1.items()) - set(dict2.items()) 
    ret.update (a) 
    print ret 
    print 'this is before' 
    for key in ret: 
     ret[key] = [ret[key]] 
     ret[key].append(i) 
     print ret 

電流輸出:

{1:0,2:1}

{1:0,2:6}

{1:0,2:1}

{1:0,2:6}

{2:1}

這是之前#below是最終輸出

{2:[1,1]}

願望輸出:{2: [1,0],2:1,1]}

+0

這不是有效的Python語法:你缺少一個':'在你的'for'循環聲明之後 –

+0

你爲什麼認爲這會起作用?你不能'.append'到'dict'。您需要將該值作爲列表,然後添加到該列表中。 – jonrsharpe

+0

你似乎沒有理解字典是如何工作的。您必須將'ret [2]'的值設置爲一個列表,並且只有這樣您才能將其他元素附加到列表中。另外,你的'print'語句應該在你嘗試附加一個元素後執行。否則,你永遠不會達到預期的輸出。 – GeckStar

回答