Python がインポート時にモジュール コードを実行する理由
Python では、モジュールのインポートは単にその定義をロードするだけではありません。代わりに、モジュール内に含まれるコードがインポート時に実行されます。これにより、「どうすればこの実行を防ぐことができるでしょうか?」という疑問が生じます。
インポート時にモジュールの実行を停止
Python のデフォルトの動作は、「」のようなキーワードが使用されるという事実に由来しています。 class" と "def" は宣言ではなくステートメントです。これは、直接実行をトリガーし、モジュールに機能を追加することを意味します。これをオーバーライドするために、慣用的なアプローチでは次の形式の main 関数を使用します。
# Always-run code (e.g., classes, definitions) def main(): # Code to execute only when the module is run directly if __name__ == "__main__": main()
main 関数を定義すると、モジュールが独自のプログラムとして実行されるときにのみ実行されるコードを分離できます。 、インポートされずに)。対照的に、メイン関数の外側に配置されたコードは、モジュールの使用方法に関係なく実行されます。
以上がインポート時に Python がモジュール コードを実行しないようにするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。