Python 模擬試験

PythonZen & PEP 8 模擬試験 第5回 問11・PEP 8 コードのレイアウト(インポート)

複数の名前のインポート

1 つのモジュールから多数の名前を import するとき、長くなる行の書き方として、PEP 8 に沿った最も適切なものを1つ選べ。

  1. A

    行末にバックスラッシュを付けて、行を継続する。

  2. B

    名前ごとに、別々のファイルに分ける。

  3. C

    名前を連結した、1 つの長い文字列にして import する。

  4. D

    括弧で囲み、1 行に 1 つずつ書く。(from m import (a, b, c) の形で改行する)

正解と解説を見る

正解:D

長い import は、括弧で囲んで、複数行で書く。バックスラッシュは使わない。

PEP 8 のimportの規則。
項目規則
書く位置ファイルの先頭(モジュールのdocstringの後、グローバル変数の前)
グループの順序標準ライブラリ → サードパーティ → 自分のプロジェクト。グループの間は空行
1行の書き方原則として1行に1つ(from x import a, b は可)
絶対import推奨される(相対importは避けるか限定的に)
ワイルドカード import避ける(名前の出どころが不明になる)

学習のポイント:isort や ruff で自動的に整えられる。

この問題を演習で解く →

問題一覧へ

このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。