Python中if __name__ == "__main__": main() 的作用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Haidaiya/article/details/81474582

在写的比较好的Python脚本中经常可以看见这样一句话

要理解这段代码的作用,首先要理解python文件(.py)的执行原理

1 执行原理

python文件的执行方式有两种,第一种直接执行,即编码完成后直接执行该文件

第二种,在另外一个python文件中通过import方式导入python文件,执行

2 __name__ 和__main__

这里假设有两个python文件  test.py 和 test附件.py

其中test.py包含if __name__ == "__main__":     main()代码

test附件.py包含import test.py代码,表示引用这个模块

那么 test.py 的__name__  == test.py    __main__  == test.py

但是在test附件.py 中 __name__ == test,注意这里没有.py

3 作用

这样做的作用是什么呢,只有自己运行自己才能执行if语句中的代码,其他文件调用时无法执行,增加了安全性,比如你开发了一个发信息功能的python文件,只希望自己可以运行,就要加if __name__ == "__main__":     main() 这句代码,这样其他人就算导入你的python文件也无法实现这个功能。

猜你喜欢

转载自blog.csdn.net/Haidaiya/article/details/81474582