我想回傳一個以大寫字母作為鍵和一個串列小寫字母作為值的字典。
def sample(d):
new_group = {}
for small_letters, capitals in d.items():
for capital in capitals:
new_group[capital] = [small_letters]
return(new_group)
print(sample({"aaa":["A","B"], "bbb":["A","C"], "ccc":["A"]}))
我的代碼回傳:
{"A":["ccc"], "B":["aaa"], "C":["bbb"]}
預期結果:
{"A":["aaa","bbb","ccc"], "B":["aaa"], "C":["bbb"]}
uj5u.com熱心網友回復:
您正在重寫字典值,而不是附加到串列中。
def sample(d):
new_group = {}
for small_letters, capitals in d.items():
for capital in capitals:
new_group[capital] = new_group.get(capital, []) [small_letters]
return(new_group)
print(sample({"aaa":["A","B"], "bbb":["A","C"], "ccc":["A"]}))
結果:
{'A': ['aaa', 'bbb', 'ccc'], 'B': ['aaa'], 'C': ['bbb']}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/396665.html
