この記事では、Python に main() 関数がない理由を理解します。
Python に いわゆる main 関数 がないことは間違いありませんが、 「Pythonの主な機能」や「」はインターネット上でよく引用されています。 主な機能。 "
彼らの意図は、元の主なアプローチを再現することかもしれませんが、多くの 誤解されて (または誤解されて)、その結果、非常に複雑なコードが作成されてしまいます。
始める前に、次の 2 つの質問に答えます -
「メイン関数」とは正確には何ですか?
なぜ一部のプログラミング言語では main 関数を使用する必要があるのでしょうか?
C/C、C#、Java、Go、Rust などの一部のプログラミング言語では、 main 関数は、プログラムの実行エントリとして、特定の意味を持ちます -
このメイン関数名は必須です。つまり、メイン関数が存在する必要があります。 関数。
main 関数は 1 つしか存在できないため、プログラムの各エントリは次のようになります。 個性的。
構文形式には特定の要件があり、非常に一貫した (固定された) 規則に従っています。 テンプレート。
これらは、コードを実行可能ファイルにコンパイルする必要があるコンパイル済み言語です。 オペレーティング システム/ブートローダーのバイナリを使用してプログラムのスタートアップを見つけることができるため、 この関数は定義する必要があります。
簡単に言うと、大量のコンテンツの中で定義する必要がある重要な始まりがあります。 実行可能コード。
主な関数は、これらの言語の基本的な有機的な機能です。
しかし、Python に戻ると、状況は劇的に変わります。
Python はインタープリタ言語であり、スクリプト言語としても知られています。これ 実行中のプロセスは、行ごとに上から下に実行されます。つまり、 出発点はわかっています。
各 .py ファイルは、プログラムのエントリ ポイントとして使用できる実行可能ファイルです。 プログラムのエントリ ポイントが柔軟であり、規則に従う必要がないことを意味します。 すでにフォロー中です。
エントリーファイルを指定せずにPythonプロジェクトを実行する場合( 「python -m http.server 8000」などの一般的なコマンド ラインは、次のことが原因である可能性があります。 パッケージ内の「ファイル」として次のことを行う main.py ファイルがあります。 操作する。
要約すると、スクリプト言語 Python はコンパイル言語とは異なります。できる 個々のモジュール (.py ファイルなど) のレベルで柔軟な実行手法を選択します。 または、他の言語とは異なり、多くのモジュールで構成されるパッケージレベルで これは、明確に定義されたエントリがなくても実現できます。
言い換えれば、Python ではプログラマが統一されたエントリ (または それは関数、クラス、またはその他の構文レベルです)。
一部のユーザーは、次のコードに頻繁に遭遇したり、記述したりするため、混乱する可能性があります -
リーリーこれは Python のメイン関数ではないでしょうか?多くの人が同意すると思います! -
######いいえ、ちがいます。関数名が「
main」であることを除いて、オーソドックスな main とは何の関係もありません。 前に説明した関数は必須ではなく、必ずしも順序を制御するものではありません プログラムの実行。それがなければ、構文上の問題は発生しません。 「
main」関数を特定して、その「メイン」ステータスを強調したい人もいます。 これを手動で実行する最初の関数にします。 彼らは、そのような名前の関数の方が覚えやすいと考えるかもしれません。
main() が以下でのみ実行されることを証明するために if name =='main' と書きたいかもしれません。 現在のスクリプトは直接実行されるため、インポート時に実行しないでください。 他のモジュール。
ただし、この書き方はお勧めしません。
最も一般的な例: わずか数十行のコードまたはスクリプト ファイル 簡単な機能を実装(小型クローラー、タートルを使って絵を描くなど)、 しかし、それらはすべて以前と同じように書かれています。
次の理由により、 if
name__ == '__main'- と記述することはお勧めできません。
要約
main() の代わりに main.py を使用します。なぜならPythonのプログラム実行単位は 関数やクラスの代わりにスクリプト ファイルを使用する場合、エントリ ファイルの名前は main.py にする必要があります。 内部機能は要件によって決まります。
可能な場合は、エントリ ファイルとして main.py を使用します。このファイルは非常に簡単にまとめて使用できます コマンドラインで「-m」パラメータを使用します。
についても学びました。
以上がPython には main() 関数がないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。