如何理解__name__

我们可以把他简单地理解为C中的main,但是其又不完全和main一致,首先呢,一般python项目中我们会约定俗成是把包含__name__=='main’部分当作项目的入口。

先看如下程序:test.py

print('恋习python')
def main():print('恋习python')
print(__name__)
if __name__ == '__main__'main()
print('跟我分析,恋习练习')

输出结果:
恋习python
main
恋习python
跟我分析,恋习练习

根据程序我们得知:如果python中没有import其他程序模块,那么__name__都会等于__main,我们一般默认这里是程序入口。

然后那么如果我们在某个py文件里import了其他模块又会出现什么情况下呢?
我们继续看如下程序:import.py

import test
print(__name__)

输出结果:
恋习python
test
跟我分析,恋习练习
main
由此我们可以看出,import其他模块的__name__,输出的话结果是当前文件名,也就是test。而自己的__name__,其输出结果依然是__main__。我们如何看__name__是否会等于__main__,就要看这个__name__是在哪个文件中的

python的__name__相关推荐

  1. 浅析python 中__name__ = '__main__' 的作用

    很多新手刚开始学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = ...

  2. python中 __name__及__main()__的妙处02

    python中 __name__及__main()__的妙处 #hello.pydef sayHello(): str="hello" print(str); if __name_ ...

  3. python 中__name__ = '__main__' 的作用

    学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = '__main ...

  4. python中main的作用_浅析python 中__name__ = '__main__' 的作用

    很多新手刚开始学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = ...

  5. if __name__ == __main__:什么意思_【Python】__name__ 是什么?

    作者:leetao 链接:[Python]__name__ 是什么? 来源:博客园 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 前言 在我们浏览一下 python 文件或者自 ...

  6. python学习笔记26(python中__name__的使用)

    python学习笔记26(python中__name__的使用) 在python中,每个py文件都是一个模块,也都是一个可执行文件,即包含main方法.因此,对每个py文件,可以单独运行,也可以imp ...

  7. Python 的 __name__ 变量,到底是个什么东西?

    点击上方"小白学视觉",选择加"星标"或"置顶"重磅干货,第一时间送达 原文链接: https://medium.freecodecamp. ...

  8. python if __name__ == '__main__'

    参考:知乎网友旷世的忧伤 博主Arkenstone python 中 if name == 'main'的作用:简单地说,if__name__=='main'是一个开关,当一个程序(用A表示)需要调用 ...

  9. python中__name__属性的取值_Python脚本的“__name__”属性

    每个Python脚本在运行时都有一个"__name__"属性.如果脚本作为模块被导入,则其"__name__"属性的值被自动设置为模块名:如果脚本独立运行,则其 ...

最新文章

  1. python numba.jit(该装饰器用于将Python函数编译为本机代码、python运算加速器)
  2. 超干货 | 在线教育增长实操者案例分享:如何玩转教育增长模型?
  3. NIO通信,仿QQ基本聊天业务,交流篇
  4. 数据库不停机导数据方案_如何计算数据停机成本
  5. 配置使用4台主机实现12台主机的集群
  6. 通用目标检测(集合)
  7. 网络规划设计师教程知识点精讲之计算机网络分类
  8. SpringBoot项目实现微信小程序登录步骤
  9. 1949-2017闰年 c语言,1949年到2017年里有多少个闰年,多少个平年
  10. printf的计算和输出顺序
  11. html手机9张图片显示,怎么把一张图片分成9张(手机美图秀秀九宫格在哪)
  12. 恒生电子面试过程纪录
  13. Windows命令:Net使用详解
  14. mysql sql stuff函数_mssql 系统函数 字符串函数 stuff 功能简介
  15. RTSP/GB28181/SDK/Ehome协议人脸识别/车牌识别视频智能分析系统EasyCVR获取播放地址和流地址方法介绍
  16. 全国最强计算机的大学排名,全国高校计算机学科实力最新排名,这19所高校最受认可!...
  17. 路由器的千兆是什么意思_千兆赫兹ghz到底是什么意思
  18. 关于移动支付,美国零售商能从中国这里学到什么?
  19. 面试积累(冒泡排序和选择排序)
  20. springboot2.0.5+jpa多数据源配置and注解形式多数据源切换

热门文章

  1. 【送书福利】第一次送书活动(总共10本)
  2. python-实现栈结构
  3. BZOJ 1228: [SDOI2009]ED(SG定理)
  4. Google Map API学习1
  5. 数据库事务隔离级别转
  6. Winform 显示Gif图片
  7. 北京大学数学科学学院2006/9/20声明:坚持真理、追求卓越zz
  8. mysql 时间序列可视化工具_mysql – 从from到to条目创建时间序列
  9. 东北林大计算机考研难吗,北京林业大学考研难吗?一般要什么水平才可以进入?...
  10. Python模拟汉诺塔问题移动盘子的过程