pythonif __name__=='__main__'
Posted hzyuan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pythonif __name__=='__main__'相关的知识,希望对你有一定的参考价值。
当我们想一个python文件作为脚本直接执行时才执行某段代码,而被其他python文件调用时不执行那段代码,就可以通过 if __name__==\'__main__\'
实现。 if __name__==\'__main__\'
只有在python文件作为脚本执行时才为 True。
python 文件直接执行时 __name__
值为 \'__main__\'
,被别的文件调用时 __name__
值为模块名称。
#test.py
print(\'one\')
print(\'__name__:\', __name__)
if __name__==\'__main__\':
print(\'two\')
\'\'\'
运行结果:
one
__name__: __main__
two
\'\'\'
#import_test.py
import test
\'\'\'
运行结果:
one
__name__: test
\'\'\'
Pythonif __name__ == "__main__"做了什么?
在Python的很多源文件中,会有这样的语句:
if __name__ == ‘__main__‘: # script code here
比如有两个源文件A.py和B.py,都有上面的代码:在B.py中导入了A.py: import A
执行B.py,B.py中的 if __name__ == "__main__":
解释为
if B==B:
在执行到B.py中导入的A.py文件中的 if __name__ == "__main__":时,
解释为
if A==B
因此可以看出:
__name__:表示当前执行的文件名称
__main__:表示程序入口文件的名称。本例中是执行的B.py,因此__main__表示B文件名(不包括.py)
以上是关于pythonif __name__=='__main__'的主要内容,如果未能解决你的问题,请参考以下文章
Pythonif __name__ == ‘__main__‘: