※記事内に商品プロモーションを含むことがあります。
はじめに
Pythonの辞書内包表記を使って、辞書(dict)型の変数を簡潔に作成する例を示す。
Pythonにはリスト型の処理を簡潔に書けるリスト内包表記があるが、辞書型にも同様の内包表記がある。リスト内包表記と合わせて、作成例を示す。
環境: Python 3.5以降
リスト内包表記
参考までに、リスト内包表記の例を示す。0から9までの数字を2倍にしたリストを得る。
|
|
実行結果
|
|
辞書内包表記
次に、辞書内包表記の例を示す。0から9までの数字をキー、各キーを2倍にしたものを値とした辞書を得る。
|
|
実行結果
|
|
上記の例のように、リスト内包表記の[...]
を{...}
として、コロン:
を使ってキーと値を指定すると、辞書内包表記となる。
辞書内包表記のif
辞書内包表記で、ある条件を満たす変数のみ抽出する場合は、in
節の後ろにif
節を設ける。
例:0から9までの偶数をキー、各キーを2倍にしたものを値とした辞書を得る。
|
|
実行結果
|
|
辞書内包表記のif~else
辞書内包表記で、条件によって処理を分岐させる場合は、for
節の前に、以下のようにif~else
節を設ける。
(条件がTrueのときの値) if (条件) else (条件がFalseのときの値)
例:0から9までの整数をキーとし、キーが偶数の場合は2倍、キーが奇数の場合は3倍にしたものを値とした辞書を得る。
|
|
実行結果
|
|
参考
辞書内包表記を使うと、PandasのSeries, DataFrameを簡潔に作成することができます。