if 文の条件が長いとき
if の条件が複数行になるとき、PEP 8 が避けるよう勧めている書き方として、最も適切なものを1つ選べ。
- A
継続行を、条件の開始位置にそろえて追加のインデントを付ける書き方
- B
継続行のインデントが、
ifの本体のインデントと同じで、条件と本体の区別がつかない書き方 - C
条件を変数に代入してから
ifに使う書き方 - D
条件を短くするため、関数に切り出す書き方
正解と解説を見る
正解:B
条件を括弧の中で改行するときは、継続行を本体と区別できるようにインデントする。別の変数や関数にして、条件を短くする方法もある。
| 項目 | 規則 |
|---|---|
| インデントの幅 | 1段階につき空白4つ |
| タブと空白 | 空白を使う。混在させない(Python 3 ではエラーになる) |
| 括弧内の改行 | 開き括弧の位置にそろえる、またはぶら下げインデントにする |
| ぶら下げインデント | 開き括弧の後ろには何も書かず改行し、次の行からインデントする(引数を1行目に置かない) |
| 長い条件のif | 本文と区別できるよう、継続行を深くインデントするなどの工夫をする |
- A
誤り。条件と本体が区別できる。
- B
正しい。継続行には追加のインデントを付けたり、コメントや括弧で区別する。
- C
誤り。読みやすくなる。
- D
誤り。望ましい工夫。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。