辞書のリストをリストの辞書に変換する 質問する

辞書のリストをリストの辞書に変換する 質問する

(同じ長さの)リストの辞書を切り替えたい:

DL = {'a': [0, 1], 'b': [2, 3]}

辞書のリスト:

LD = [{'a': 0, 'b': 2}, {'a': 1, 'b': 3}]

ベストアンサー1

気の利いた/ハッキーなワンライナーを楽しむ人向け。

以下DLLD:

v = [dict(zip(DL,t)) for t in zip(*DL.values())]
print(v)

および(すべてのキーLDDL同じ各辞書内):

v = {k: [dic[k] for dic in LD] for k in LD[0]}
print(v)

または(すべてのキーLDDL同じではない各辞書内):

common_keys = set.intersection(*map(set, LD))
v = {k: [dic[k] for dic in LD] for k in common_keys}
print(v)

また、実際のシステムでこのようなコードを使用することは容認されないことにも注意してください。

おすすめ記事