← クエスト一覧

クエスト20:辞書内包表記

スライド 1 / 5
コーデ
💻 コード例
実行結果
← クエスト一覧
🐍 Python / Quest 20 / 85

クエスト20:辞書内包表記

応用 +10 XP
🏠
今回の課題
辞書内包表記で、[1, 2, 3] から「数字: その二乗」の辞書 {1: 1, 2: 4, 3: 9} を作って表示しよう。
📖 解説を見る
📚 辞書内包表記って何?

リスト内包表記(Q20)と同じ発想で、辞書も1行でサッと作れます。

✏️ 書き方:
{キー: 値 for 変数 in リスト}

words = ['ab', 'cde']
lengths = {w: len(w) for w in words}
print(lengths)
 → {'ab': 2, 'cde': 3}
この例では「単語」をキー、「その長さ」を値にした辞書ができています。

📋 作るもの:
nums の各要素をキー、その二乗を値にした辞書を作る
・変数名は squares(下の print がこの名前を使う)
・できあがりは {1: 1, 2: 4, 3: 9}

💡 どこで使う?

一覧から対応表をパッと作りたいときに使います。商品IDから価格、名前から点数といった変換表を、for で1つずつ入れなくても1行で組めます。リスト内包表記の辞書版と考えるとわかりやすいです。

⚠️ ポイント:
{ } の中に キー: 値 for ... を書く
if で条件も足せる
n**2 は n の2乗(n × n)
ヒントを見る
{キー: 値 for 変数 in リスト} の形。キーには数字そのもの、値にはその2乗を書こう。2乗は ** で計算できるよ。
期待する出力
{1: 1, 2: 4, 3: 9}
📄 見本
「答えを見る」を押すと、お手本のコードが出ます。クリックでコピーできます。
💻 コードエディタ
実行すると結果がここに表示されます
正解!見本と同じになりました。
次へ →
🏠 ホームへ

れんしゅうもんだい

☑ 0 / 3 正解 レッスンに戻る

全問正解でクエストクリア!

未挑戦

問題 1: ['a','b','c'][1,2,3]から{'a':1,'b':2,'c':3}を辞書内包表記で作って表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
{'a': 1, 'b': 2, 'c': 3}
未挑戦

問題 2: 1〜5の数字とその2倍の辞書を内包表記で作って表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
{1: 2, 2: 4, 3: 6, 4: 8, 5: 10}
未挑戦

問題 3: {'a':1,'b':2,'c':3}から値が2以上の要素だけの辞書を内包表記で作って表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
{'b': 2, 'c': 3}
コピーしました!