我有機會用 dict 增強重寫下面的代碼嗎?(如果我命名正確,意思是{k: v for k, v in ...})
list_of_dicts = [{'a': 1}, {'b': 2}, {'b': 20, 'c': 3}, {'a': 10, 'b': 2}]
for k, v in [p for d in list_of_dicts for p in d.items()]:
d[k] = d.setdefault(k, set()) | {v}
uj5u.com熱心網友回復:
確定為什么不:)。但它有點嵌套??
import itertools
list_of_dicts = [{'a': 1}, {'b': 2}, {'b': 20, 'c': 3}, {'a': 10, 'b': 2}]
o = {k: {d[k] for d in list_of_dicts if k in d} for k in itertools.chain.from_iterable(list_of_dicts)}
print(o)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/477313.html
標籤:Python 字典 python-3.10
