括弧とカンマの周りの空白
次のコードのうち、PEP 8 の空白の使い方に沿っているものを1つ選べ。
- A
spam( ham[ 1 ], { eggs: 2 } ) - B
spam (ham [1] , {eggs : 2}) - C
spam(ham[1],{eggs:2}) - D
spam(ham[1], {eggs: 2})
正解と解説を見る
正解:D
括弧の直後・直前、カンマの前、関数呼び出しの括弧の前には空白を入れない。カンマの後には空白を1つ入れる。
| 場面 | 規則 | 例 |
|---|---|---|
| 括弧の内側 | 空白を入れない | spam(ham[1]) |
| カンマ・セミコロン・コロンの直前 | 空白を入れない | x, y = 1, 2 |
| キーワード引数・既定値の等号 | 空白を入れない(型注釈つきの既定値は入れる) | f(x=1) / def f(x: int = 1) |
| 二項演算子 | 両側に空白(優先順位が違う演算子が混ざるときは、低い方の周りだけに入れてもよい) | a = b + c / z = x*x + y*y |
| スライスのコロン | 単純なときは空白なし。複雑な式のときは両側を同じ幅にそろえる | ham[1:9] / ham[lower+1 : upper+1] |
| 代入の位置をそろえる空白 | 入れない | x = 1 / long_name = 2 |
- A
誤り。括弧の内側に余計な空白がある。
- B
誤り。関数名と括弧の間、カンマの前などに余計な空白がある。
- C
誤り。カンマの後に空白がない。
- D
正しい。括弧の直後や直前、カンマの前には空白を入れず、カンマの後には空白を1つ入れる。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。