ホームページ > バックエンド開発 > Python チュートリアル > Python で `if __name__ == '__main__':` は何をするのでしょうか?

Python で `if __name__ == '__main__':` は何をするのでしょうか?

Mary-Kate Olsen
リリース: 2024-12-27 08:41:10
オリジナル
146 人が閲覧しました

What Does `if __name__ ==

'if name == "__main__":' は何をしますか?

Python スクリプトをメイン プログラムとして実行すると、 name 変数にハードコーディングされた文字列「__main__」。スクリプトが別のモジュールによってインポートされる場合、name はインポートに使用される名前に割り当てられます。たとえば、別のスクリプトが foo.py を import foo としてインポートする場合、foo.py の name 変数は "foo" になります。

name が「__main__」と等しい場合、ガード内のコードは、スクリプトがスクリプトとしてインポートされた場合ではなく、直接実行された場合にのみ実行されることが保証されます。 module.

なぜこれが必要ですか?

if __name__ == "__main__": ステートメントを含めると、次のような利点があります。

  1. 不要な実行の防止: スクリプトが別のモジュールによってインポートされた場合、ガード内のコードは実行されず、誤って実行されるのを防ぎます。 code.
  2. コンテキストごとに異なる動作: コンテキストに基づいて異なるコードを実行できます (メイン プログラムまたはモジュールとして実行)。たとえば、スクリプトが直接実行される場合にのみ実行される特定の関数を設定したり、スクリプトがメイン プログラムとして実行される場合にのみ初期化またはセットアップ ルーチンを実行したりすることができます。
  3. 指定に対する保護argument: スクリプトをモジュールとしてインポートする場合、インポートされたスクリプトに独自のコマンドライン引数解析コードが含まれる可能性があります。 if __name__ == "__main__": ガードは、インポートされたスクリプトがインポート スクリプトのコマンドライン引数を使用して予期せず実行されるのを防ぎます。

以上がPython で `if __name__ == '__main__':` は何をするのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート