PythonでC++のstd::mapみたいな挙動が欲しい

最近競技プログラミングの問題をちょろちょろやってて、それでC++を使ってるんですが、C++のstd::map(pythonのdict的な連想配列コンテナ)は[]で存在しないキーにアクセスすると自動で値のデフォルトコンストラクタでinsertが呼ばれるようになってるので

こんな書き方をしても大丈夫なんですね。
同じことをpythonのdictでやったらエラーになるので何か無いかなーと検索したところ、collections.defaultdictというクラスが同じことをできるようです。

こんな感じで

ちなみにstd::mapは常にキーの昇順でソートされているという特徴もありますがそれはdefaultdictにはありません。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする