我有兩個列表,需要將它們合併成一個字典,其中鍵是字母,值是另一個列表中的值。 例如:如何在python中使用字典組合其他列表中的項目的所有值?
map_keys_to_values_list(["a", "b", "a"], [15, 3, 6])
無線本地環路給我:
{'a': [15, 6], 'b': [3]}
我想:
def keys_to_values_list(k_lst, v_lst):
lst = []
for i in range(len(k_lst)):
v=[]
#v.append(v_lst[i])
t = (k_lst[i],v)
lst.append(t)
my_dict = dict(lst)
for k in my_dict.keys():
val = my_dict.get(k)
for m in range(len(k_lst)):
val.append(v_lst[m])
return my_dict
,但我得到了我的價值列表中的所有值
設置default_factory爲無相反的,爲什麼不直接調用字典(d),並返回一個純粹的字典? –
@EnricoBorba不,我不會那樣做。這將創建一個新的* vanilla * dict對象,這對於大型字典來說可能相當昂貴。與'dict(d)'相比,將'default_factory'設置爲'None'非常便宜。 'd'已經是一個字典子類實例。 –