← クエスト一覧

クエスト84:walrus演算子(:=)を使おう

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

クエスト84:walrus演算子(:=)を使おう

発展 +10 XP
🏠
今回の課題
walrus演算子 := を使って len('Python')n に代入しつつ、「長さは 6 だよ」と表示しよう。
📖 解説を見る
🦭 walrus演算子(:=)って何?

:= は「代入」と「その値を使うこと」を1行で同時に行える演算子です(Python 3.8以降)。見た目がセイウチの目と牙に似ていることから walrus(セイウチ)と呼ばれます。

✏️ 書き方:
if (total := 3 + 4) > 5:
    print(total)
 → 7
3 + 4 を計算して total に入れ、その値をそのまま条件にも使い、さらに次の行でも使えます。

📋 作るもの:
if の条件の中で word の長さを求め、その値を n に入れる(walrus演算子を使う)
・条件は「n が 0 より大きいか」
・条件が成り立ったら、n を使って「長さは 6 だよ」の形で表示する
(変数 := 式) のようにカッコで囲むのを忘れずに

💡 どこで使う?

「計算した値を、判定にも後の処理にも使いたい」ときに1行で書けます。while (line := f.readline()): のように読み込みと判定を同時にやる、同じ計算を2回書かずに済ませる、といった場面でコードがすっきりします。

⚠️ ポイント:
(n := 式) のように、ふつうカッコで囲む
・代入しつつ、その値をそのまま使える
ヒントを見る
(変数 := 式) と書くと、計算した値を変数に入れつつ、その値をその場でも使えるよ。if の条件の中に書いて、続く print で同じ変数を使おう。
期待する出力
長さは 6 だよ
📄 見本
「答えを見る」を押すと、お手本のコードが出ます。クリックでコピーできます。
💻 コードエディタ
実行すると結果がここに表示されます
正解!見本と同じになりました。
次へ →
🏠 ホームへ

れんしゅうもんだい

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

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

未挑戦

問題 1: [1, 4, 7, 12, 3, 8] から walrus演算子 で10以上の数だけリストにして表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
[12]
未挑戦

問題 2: [2, 5, 8, 11, 14] で walrus演算子 を使い、5以上の数の二乗リストを表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
[25, 64, 121, 196]
未挑戦

問題 3: ['hello', 'hi', 'hey', 'world'] から walrus演算子 で3文字以上の単語リストを表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
['hello', 'hey', 'world']
コピーしました!