ホームページ > バックエンド開発 > Python チュートリアル > Python の「main()」関数が実行されないのはなぜですか?

Python の「main()」関数が実行されないのはなぜですか?

DDD
リリース: 2024-12-30 09:15:13
オリジナル
329 人が閲覧しました

Why Doesn't My Python `main()` Function Execute?

エントリ ポイントの混乱: main() 関数が実行を拒否する理由

コードには main() 関数が含まれていますが、不思議なことに実行に失敗します。実行すると、あなたは当惑してしまいます。この謎を理解するために、Python スクリプトのエントリ ポイントの領域を詳しく調べてみましょう。

呼び出しの欠落

問題の核心は、 main() 関数。 Python インタープリターはスクリプトを検出すると、実行する最初のコードであるエントリー ポイントを検索します。明示的なエントリ ポイントが存在しない場合、インタプリタはコード全体をスキップして実行を停止します。

エントリ ポイントの定義

この問題を解決するには、以下を指定する必要があります。エントリポイントを明示的に指定します。これを実現するには、次の 2 つの一般的な方法があります:

  1. 単純な呼び出し: 以下に示すように、スクリプトの最後の行として main() 関数への呼び出しを追加します。
import sys

def random(size=16):
    return open(r"C:\Users\ravishankarv\Documents\Python\key.txt").read(size)

def main():
    key = random(13)
    print(key)

main() # Execute the main function explicitly
ログイン後にコピー
  1. 条件付き呼び出し:次のコード ブロックを使用して、スクリプトがプライマリ モジュールとして実行される場合にのみ main() を条件付きで呼び出します。
if __name__ == "__main__":
    main()
ログイン後にコピー

これにより、モジュールがプライマリ モジュールとして呼び出された場合にのみ main() が実行されるようになります。コードを開始し、インポートされたモジュールでの不要な実行を防ぎます。

Guido's洞察

効果的な main() 関数の作成に関するさらなる洞察については、Guido van Rossum の 2003 年の独創的な記事 (What Does if name == "__main__": do?) を参照してください。

以上がPython の「main()」関数が実行されないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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