pythonの複数の辞書を合体して一つの辞書にする

投稿日: 2021年 5月 6日

先日人から頼まれて、html で書かれた注文書を、csv にほしいとお願いされ、スクリプトを作りました。
その時、python を使ってやってみました。python は今までほとんど触ったことはなかったので、いい勉強になりました。

スクリプトの中で、 複数の辞書を合体して、一つの辞書にする ということをやってみたので、備忘のためにどのようにやったか書いておきます。

{**dict1, **dict2} で合体

例えば、下記のような感じです。

fruits1 = {"grape":4, "apple": 3, "banana": 1, "orange": 9}
fruits2 = {"pinapple": 5, "cherry": 4}

print({**fruits1, **fruits2})

# 実行結果:
# {'grape': 4, 'apple': 3, 'banana': 1, 'orange': 9, 'pinapple': 5, 'cherry': 4}

合体ができました。実際に作ったスクリプトでパースする html は注文書だったので、フルーツは出てきませんが、要領としては同じで、必要な項目を集めて、いくつかのハッシュにまとめて、それを合体して、 csv の1レコードを作るというようなことを行いました。

他の用途

ダブルアスタリスクには、他にも用途があり、

  • 累乗
  • 複数のキーワード引数の定義

などができるようです。

python もまたいろいろ独自の書き方とかデータの種類があって難しいです。

プログラミングに関するオススメ書籍