• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > 浅析python 中__name__ = '__main__' 的作用

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

作者:shichen2014 字体:[增加 减小] 来源:互联网

shichen2014 通过本文主要向大家介绍了python if name main,python中 name main,python name main,python中if name main,python3 if name main等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

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

有句话经典的概括了这段代码的意义:

“Make a script both importable and executable”

意思就是说让你写的脚本模块既可以导入到别的模块中用,另外该模块自己也可执行。

这句话,可能一开始听的还不是很懂。下面举例说明:

先写一个模块:

#module.py
def main():
  print "we are in %s"%__name__
if __name__ == '__main__':
  main()

</div>

这个函数定义了一个main函数,我们执行一下该py文件发现结果是打印出”we are in __main__“,说明我们的if语句中的内容被执行了,调用了main():

但是如果我们从另我一个模块导入该模块,并调用一次main()函数会是怎样的结果呢?

#anothermodle.py
from module import main
main()

</div>

其执行的结果是:we are in module

但是没有显示”we are in __main__“,也就是说模块__name__ = '__main__' 下面的函数没有执行。

这样既可以让“模块”文件运行,也可以被其他模块引入,而且不会执行函数2次。这才是关键。

总结一下:

如果我们是直接执行某个.py文件的时候,该文件中那么”__name__ == '__main__'“是True,但是我们如果从另外一个.py文件通过import导入该文件的时候,这时__name__的值就是我们这个py文件的名字而不是__main__。

这个功能还有一个用处:调试代码的时候,在”if __name__ == '__main__'“中加入一些我们的调试代码,我们可以让外部模块调用的时候不执行我们的调试代码,但是如果我们想排查问题的时候,直接执行该模块文件,调试代码能够正常运行!

</div>

您可能想查找下面的文章:

  • Python中if __name__ == '__main__'作用解析
  • Python中__name__的使用实例
  • 浅析python 中__name__ = '__main__' 的作用
  • 浅析python 中__name__ = '__main__' 的作用

相关文章

  • Python抓取框架 Scrapy的架构
  • Linux上安装Python的PIL和Pillow库处理图片的实例教程
  • Python实现生成简单的Makefile文件代码示例
  • python使用Tkinter显示网络图片的方法
  • Python中MYSQLdb出现乱码的解决方法
  • Python中的sort()方法使用基础教程
  • 基于python编写的微博应用
  • 在Python中操作文件之read()方法的使用教程
  • Python获取当前路径实现代码
  • python求列表交集的方法汇总

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • 优化Python代码使其加快作用域内的查找
    • python装饰器decorator介绍
    • python的绘图工具matplotlib使用实例
    • 在Linux系统上通过uWSGI配置Nginx+Python环境的教程
    • Django与遗留的数据库整合的方法指南
    • Python实现查找系统盘中需要找的字符
    • 在Python中使用模块的教程
    • python获取元素在数组中索引号的方法
    • Python中zip()函数用法实例教程
    • Python中对象迭代与反迭代的技巧总结

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有