型注釈の空白
型注釈を含む関数定義の書き方として、PEP 8 に沿っているものを1つ選べ。
- A
def f(x: int = 0) -> int: - B
def f(x:int=0)->int: - C
def f(x : int = 0) -> int: - D
def f(x: int=0) -> int:
正解と解説を見る
正解:A
型注釈のコロンは、前に空白を入れず、後ろに入れる。注釈付きの引数のデフォルト値の = は、前後に空白を入れる(注釈なしでは入れない)。
| 場面 | 規則 | 例 |
|---|---|---|
| 括弧の内側 | 空白を入れない | 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
誤り。注釈付きの
=の前後には空白を入れる。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。