lambda 式と条件式
次のコードを実行したときの出力として、正しいものを1つ選べ。
print((lambda a, b: a if a > b else b)(3, 8))
- A
3 - B
True - C
8 - D
SyntaxErrorが発生する。
正解と解説を見る
正解:C
lambda 式の本体は式1つ。条件式 A if 条件 else B は式なので書ける。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `print((lambda a, b: a if a > b else b)(3, 8))` | — |
| 結果 | 実際の出力 | 8 |
- A
誤り。
3 > 8は偽なので、bが返る。 - B
誤り。比較の結果ではなく、値を返す。
- C
正しい。条件式
A if 条件 else Bを使って、大きい方の値を返している。 - D
誤り。lambda 式の本体には、条件式を書ける。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。