if __name__ == ‘__main__‘ 用法理解

if name == ‘main’ 用法理解
我们知道:#
一个Python文件有两种使用方法, 第一是直接作为脚本执行,第二是通过在其它py文件中导入该文件调用执行。
而if name == 'main’的作用就是控制这两种情况的代码执行过程。
简言之:if __name == 'main’下的代码只有在被作为脚本执行的情况下才会执行

举个例子:#
新建test_01.py文件:#

print('Run is good sport!')
print(__name__)
if __name__ == '__main__':
    print('我被当作脚本执行了')
 


# 执行test_01.py结果:
Run is good sport!
__main__
我被当作脚本执行了

新建test_02.py文件:#

from name_main import test_01
print(__name__)
 
# 执行test_02.py结果:
Run is good sport!
name_main.test_01
__main__

分析:#
第一次执行test_01.py文件:
test_01.py当作脚本执行,则脚本中的__name__就是’main’,所以会依次执行

print('Run is good sport!')
print(__name__)
print('我被当作脚本执行了')

第二次执行test_02.py文件:
首先导入test_01.py文件,py文件在导入的时候会执行导入文件的代码所以

print('Run is good sport!')
print(__name__)

然后由于test_01.py文件是作为模块导入的,所以此python基础教程时__name__就不会是’main’(而是导入的文件名name_main.test_01),所以if name == ‘main’条件不成立
然后继续执行
print(name),此时的__name__由于是test_02.py当作脚本执行,所以就是’main

最后总结:#
if name == 'main’的主要用处就是模块当作脚本执行时的部分代码私有化,也就是只有当作脚本执行的时候if name == 'main’下的代码才会执行。
作者: MrSu

出处:https://www.cnblogs.com/suguangti/p/12632119.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值