如何將列表元組和字典加入字典?如何將列表元組和字典加入字典?
['f','b','c','d'] (1,2,3) and {'a':'10'}
d excluded for list be compatible with the tuple
output {'f':'1','b':'2','c':'3','a':'10'}
如何將列表元組和字典加入字典?如何將列表元組和字典加入字典?
['f','b','c','d'] (1,2,3) and {'a':'10'}
d excluded for list be compatible with the tuple
output {'f':'1','b':'2','c':'3','a':'10'}
您可以從鍵和值的dict
像這樣:
keys = ['a','b','c','d']
values = (1,2,3)
result = dict(zip(keys, values)) # {'a': 1, 'c': 3, 'b': 2}
然後你就可以用另一個字典
result.update({ 'f' : 5 })
print result # {'a': 1, 'c': 3, 'b': 2, 'f': 5}
這將完成你的問題的第一部分更新:
dict(zip(['a','b','c','d'], (1,2,3)))
但是,您的問題的第二部分需要第二個定義'a',字典類型不允許。但是,您可以隨時手動設置附加鍵:
>>> d = {}
>>> d['e'] = 10
>>> d
{'e':10}
在字典中的鍵必須是唯一的,所以這部分:{'a':'1','a':'10'}
是不可能的。
下面是其他代碼:
l = ['a','b','c','d']
t = (1,2,3)
d = {}
for key, value in zip(l, t):
d[key] = value
像這樣的事情?
>>> dict({'a':'10'}.items() + (zip(['f','b','c','d'],('1','2','3'))))
{'a': '10', 'c': '3', 'b': '2', 'f': '1'}
因爲沒有人已給予該轉換元組項目爲str答案尚未
>>> L=['f','b','c','d']
>>> T=(1,2,3)
>>> D={'a':'10'}
>>> dict(zip(L,map(str,T)),**D)
{'a': '10', 'c': '3', 'b': '2', 'f': '1'}
dict(zip(a_list, a_tuple)).update(a_dictionary)
時的a_list是你的清單,a_tuple是你的元組和a_dictionary是你的字典。
編輯: 如果你真的想在你解析成字符串不是做轉的數字:
new_tuple = tuple((str(i) for i in a_tuple))
,並通過new_tuple到ZIP功能。
有沒有好辦法做到這一點。你有什麼條件可以給? – aaronasterling 2010-08-16 20:54:50
輸出不是有效的字典:它有重複的鍵。你也應該把列表中的數據和元組更清晰的邏輯放在一起。 – chryss 2010-08-16 20:55:21