辞書の内包表記
辞書の内包表記は、基本的にリストの内包表記とほぼ同じですが、
返す値は「キー:値」のペアになります。
次のコードでは、リストから文字列だけを取り出して辞書のキーとして設定し
さらにキーのペアになる値を1~100の間でランダムに生成しています。
例
from random import randint
keys = ["いちご",
9,
"みかん",
25,
"りんご"
]
d = {x:randint(1, 100) for x in keys if type(x) == str}
print(d)
(1)リストkeysから取り出した値を変数xに格納する
(2)変数xに対して条件式type(x) == strを評価し、文字列であるか確認する
(3)条件に当てはまった値を辞書dのキーとして格納する。
(4)キーに対応する値をrandint()によって自動生成し、辞書dの値として格納する
辞書の内包表記を構文としてまとめると次のようになります。
{キー:値 for 変数 in イテラブルなオブジェクト (if 条件式)}
実行結果
{'いちご': 9, 'みかん': 51, 'りんご': 52}
プロセスは終了コード 0 で完了しました
ーーーーーーーーーーーーーーーーー
集合の内包表記
集合の内包表記もリストと同様です。記述の違いはカッコが[]から{}になることです。
[0回]
PR