1
__author__="Sergio.Tapia"
__date__ ="$18-10-2010 12:03:29 PM$"

if __name__ == "__main__":
    print("Hello")
    print(__author__)

それはどこで入手でき__main__ます__name__か?

助けてくれてありがとう

4

2 に答える 2

9

__name__変数は、ランタイムによって使用可能になります。これは、現在のモジュールの名前であり、インポート時の名前です。"__main__"は文字列です。特別なものではなく、ただの文字列です。また、実行時のメイン スクリプトの名前でもあります。

このif __name__ == "__main__":メカニズムは、.py ファイルを直接実行する場合の一般的な方法ですが、モジュールとしてインポートする場合はそうではありません。

于 2010-10-18T16:06:13.580 に答える
2

Python モジュールは、スタンドアロン スクリプトとして実行することもできます。そのため、ブロック内のコードはif __name__ == "__main__":、モジュールが「メイン」ファイルとして実行される場合にのみ実行されます。

#foo.py
def msg():
    print("bar")

if __name__ == "__main__":
    msg()

このモジュールを実行すると出力されます

$ python foo.py
bar

インポートしても何も出力されません。

>>> import foo
>>> foo.msg()
bar

参照

于 2010-10-18T17:48:48.290 に答える