私はこれらの2つの実装の間に違いがあるかどうか興味があります:あなたは、モジュールから機能main()
をインポートすることを除いて唯一の実用的な関数main()の使用方法は?
0
A
答えて
2
if __name__ == '__main__':
somecode()
:
def main():
somecode()
if __name__ == '__main__':
main()
と交互には、私が考えることができる違いは、今日私が以前に与えた答えに適用されたものですhere。 if __name__ == '__main__'
ブロック内で直接、独自の機能main()
ではなく、中にメインのロジックを定義する
は、簡単にプログラムが途中で終了する必要があるケースを処理することができます:
def main():
...
if not continue_program:
return
...
if not continue_program:
return
...
if __name__ == '__main__':
main()
から直接同じ動作を得ているためにif
ブロック、私はいくつかの条件体を入れ子にする必要がありました(またはsys.exit()
のような醜い何かを使用しました)。あなたが与えられた正確なコードをお持ちの場合
2
は、その後、直接somecode()
を呼び出すと、私にはきれいに見えます:Pythonで、main
はちょうど別の関数およびC/Javaでのようではない特別な機能であるため、
if __name__ == '__main__':
somecode()
これは、 。
しかし、あなたの主な機能は、複数の機能、
def main():
somecode1()
somecode2()
somecode3()
if __name__ == '__main__':
main()
は今、さまざまな機能の相互作用が、今のコードをモジュールとラッパー機能することができますを作成し、以下の代替、理由ビーイング、よりクリーンでを呼び出す場合他の場所に輸入される。
if __name__ == '__main__':
somecode1()
somecode2()
somecode3()
def main():
somecode1()
somecode2()
somecode3()
if __name__ == '__main__':
main()
がに相当し、メインである、という注意はここで再び、関数の別名である
def somecode():
somecode1()
somecode2()
somecode3()
if __name__ == '__main__':
somecode()
関連する問題
- 1. main関数からdll(C++)関数をC言語で使用する方法#
- 2. Objective-Cでは、main()関数で 'self'を使う方法は?
- 3. 文字列をmain int関数に戻す方法は?
- 4. XQuery fn:idref()関数の使用方法は?
- 5. removeClass()コールバック関数の使用方法は?
- 6. EnumWindowsコールバック関数の使用方法は?
- 7. C++のmain関数にベクトルを渡す方法
- 8. 使用方法関数の引数PHP
- 9. main()からスレッドメンバー関数を呼び出す方法
- 10. int mainの複数の関数のGetTickCount()
- 11. mainの関数をC++のほかのファイルから呼び出す方法は?
- 12. GenTraversableLikeのisTraversableAgain関数の使用方法
- 13. C++、main関数の入力引数
- 14. Utilities.sleep()関数の使用方法
- 15. Libmms関数の使用方法
- 16. 集計関数の使用方法R
- 17. GetMonitorCapabilitiesとGetMonitorBrightness関数の使用方法
- 18. array_count_values関数の使用方法
- 19. メイン関数 "main()"の戻り値をC++で取り出す方法は?
- 20. サブルーチンfunctrionからmain関数への戻り値を取得する方法は?
- 21. mainメソッドからscalaクラスの関数を呼び出す方法は?
- 22. C++はmain関数の外で "cout"を使用していますか?
- 23. main()関数はリエントラントですか?
- 24. 関数の前にアニメーション関数を使用する方法
- 25. cで別のファイルからmain関数に関数を呼び出す方法は?
- 26. powershellのparam関数で変数を使用する方法は?
- 27. VueJSでデータ関数の変数を使用する方法は?
- 28. 作成した関数をint main()Cプログラミングに呼び出す方法は?
- 29. C#でMain関数を再度呼び出す方法はありますか?
- 30. void関数を使用してmain関数の変数の値を設定します
'main'は、特別なことではありません理解を向上させる機能だけ...すべてのことが起こるプログラムの「主要な」部分であることを意味する。他の関数呼び出しを1つの関数にラップすると、よりクリーンなIMOになります。それはあなたの議論の論理などを含める場所です。 – Li357
あなたは以前のC/C++デベロッパーをより幸せにしています:) – miradulo