python文件执行方式:
1.作为脚本直接执行。
2.import到其他的python脚本中被调用执行。
因此,if __name__ == '__main__':作用就是控制这两种情况执行代码的过程。
1)如果作为脚本直接运行,那么if __name__ == '__main__':语句之前和之后的代码都会被执行;
2)如何作为模块被调用,那么只会执行if __name__ == '__main__':语句之前的代码;
运行原理:
每个python文件都会包含内置的变量__name__,当该模块当做脚本直接执行时,__name__等于‘__main__’,如果该模块import到其他模块或者文件中时,则该模块的__name__等于模块名称(不包含后缀.py)。
"__main__"始终指当前执行模块的名称(包含后缀.py)。
def qqxing():
print(
'qqxing')
year = 2018
import sys
print(sys.modules[
'__main__'].qqxing())
print(
'__name__:',
__name__)
if __name__ ==
'__main__':
print(
'123')
转载于:https://www.cnblogs.com/smillepro/p/10533181.html