__name__ == "__main__"
モジュールの末尾に次のコードを書く目的として、最も適切なものを1つ選べ。
if __name__ == "__main__":
main()
- A
モジュールが import されたときにだけ、
main()を実行する。 - B
ファイルをスクリプトとして直接実行したときにだけ
main()を実行し、import されたときには実行しない。 - C
モジュールを二度と import できないようにする。
- D
mainという名前の変数を作る。
正解と解説を見る
正解:B
スクリプトとして実行したときは __name__ が "__main__" になり、import されたときはモジュール名になる。
| 実行のしかた | `__name__` の値 | `main()` |
|---|---|---|
| python ファイル名.py で直接実行 | "__main__" | 実行される |
| 別のファイルから import | モジュール名(例: "fibo") | 実行されない |
- A
誤り。import されたときは
__name__がモジュール名になるので、実行されない。 - B
正しい。スクリプトとして実行すると
__name__が"__main__"になる。 - C
誤り。そのような働きはない。
- D
誤り。
main()を呼び出しているだけ。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。