认证高级PHP讲师
其實是無法建構的,字典鍵值對需要唯一對應,End
雷雷
因為你的l1長度小於l2,而你希望l1為字典的鍵,l2為字典的值,這就會造成一個問題:以較少的鍵對應更多的值去構成字典,這就勢必導致l1中的鍵需要重複利用,但這與字典的鍵不可重複就產生了衝突,因為一個字典裡是不允許出現兩個“a”鍵的。 當然,如果反過來,以l2為鍵,l1為值,則不存在這個問題,例如形成:
l1
l2
“a”
{1:'a', 2:'b', 3:'c', 4:'a', 5:'b', 6:'c'}
是完全沒有問題的,要實現這種,可以這麼寫:
dict(zip(l2,len(l2)//len(l1)*l1+l1[0:len(l2)%len(l1)])) # 这是在 python 3.x 下的写法,如果是 py 2.x 请将 '//' 写成 '/'
運行結果:
{1: 'a', 2: 'b', 3: 'c', 4: 'a', 5: 'b', 6: 'c'}
其實是無法建構的,字典鍵值對需要唯一對應,End
雷雷
因為你的
l1
長度小於l2
,而你希望l1
為字典的鍵,l2
為字典的值,這就會造成一個問題:以較少的鍵對應更多的值去構成字典,這就勢必導致l1
中的鍵需要重複利用,但這與字典的鍵不可重複就產生了衝突,因為一個字典裡是不允許出現兩個“a”
鍵的。當然,如果反過來,以
l2
為鍵,l1
為值,則不存在這個問題,例如形成:是完全沒有問題的,要實現這種,可以這麼寫:
運行結果: