详解python中__name__的意义以及作用


Posted in Python onAugust 07, 2019

首先定义了一个test.py的文件,然后再定义一个函数,并在函数定义后直接运行:

test.py

def HaveFun():
 if __name__ == '__main__':
  print('I am in my domain,my name is %s' % __name__)
 else:
  print('Someone else calls me!,my name is %s' % __name__)


HaveFun()

运行test.py结果:

I am in my domain,my name is __main__

然后继续创建一个main.py的文件,程序如下:

main.py

import test

 test.HaveFun()

执行main.py文件,结果如下:

Someone else calls me!,my name is test
Someone else calls me!,my name is test

这里打印了两次,第一次实在main.py在进行import test的时候,进行的打印,第二次才是test.HaveFun()中执行的打印,可以发现,这里的

__name__名称已经发成了变化,从之前的main变成了模块名称test。

总结:

1、__name__这个系统变量显示了当前模块执行过程中的名称,如果当前程序运行在这个模块中,__name__ 的名称就是__main__如果不是,则为这个模块的名称。
2、__main__一般作为函数的入口,类似于C语言,尤其在大型工程中,常常有if __name__ == "__main__":来表明整个工程开始运行的入口。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python3实现公众号每日定时发送日报和图片
Feb 24 Python
使用Python通过win32 COM实现Word文档的写入与保存方法
May 08 Python
python爬虫正则表达式之处理换行符
Jun 08 Python
浅谈Python里面小数点精度的控制
Jul 16 Python
python 实现A*算法的示例代码
Aug 13 Python
浅谈python的dataframe与series的创建方法
Nov 12 Python
numpy下的flatten()函数用法详解
May 27 Python
在pycharm下设置自己的个性模版方法
Jul 15 Python
python实现屏保程序(适用于背单词)
Jul 30 Python
python实现处理mysql结果输出方式
Apr 09 Python
浅谈TensorFlow之稀疏张量表示
Jun 30 Python
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
Nov 11 Python
Pandas0.25来了千万别错过这10大好用的新功能
Aug 07 #Python
Python编程学习之如何判断3个数的大小
Aug 07 #Python
Python使用import导入本地脚本及导入模块的技巧总结
Aug 07 #Python
python可视化篇之流式数据监控的实现
Aug 07 #Python
Python+AutoIt实现界面工具开发过程详解
Aug 07 #Python
Django中的用户身份验证示例详解
Aug 07 #Python
浅谈Python中(&,|)和(and,or)之间的区别
Aug 07 #Python
You might like
php 文件状态缓存带来的问题
2008/12/14 PHP
destoon安装出现Internal Server Error的解决方法
2014/06/21 PHP
ThinkPHP实现ajax仿官网搜索功能实例
2014/12/02 PHP
php通过正则表达式记取数据来读取xml的方法
2015/03/09 PHP
利用laravel搭建一个迷你博客实战教程
2017/08/13 PHP
异步javascript的原理和实现技巧介绍
2012/11/08 Javascript
js打开windows上的可执行文件示例
2014/05/27 Javascript
js实现带按钮的上下滚动效果
2015/05/12 Javascript
JS拖拽组件学习使用
2016/01/19 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
2016/09/05 Javascript
微信小程序(应用号)简单实例应用及实例详解
2016/09/26 Javascript
Vuex模块化实现待办事项的状态管理
2017/03/15 Javascript
JSON在Javascript中的使用(eval和JSON.parse的区别)详细解析
2017/09/05 Javascript
从源码看angular/material2 中 dialog模块的实现方法
2017/10/18 Javascript
vue better scroll 无法滚动的解决方法
2018/06/07 Javascript
微信小程序实现拖拽功能
2019/09/26 Javascript
如何用vue-cli3脚手架搭建一个基于ts的基础脚手架的方法
2019/12/12 Javascript
详解webpack的文件监听实现(热更新)
2020/09/11 Javascript
Vue全局使用less样式,组件使用全局样式文件中定义的变量操作
2020/10/21 Javascript
[08:07]DOTA2每周TOP10 精彩击杀集锦vol.8
2014/06/25 DOTA
[55:39]DOTA2-DPC中国联赛 正赛 VG vs LBZS BO3 第二场 1月19日
2021/03/11 DOTA
利用python实现微信头像加红色数字功能
2018/03/26 Python
python用列表生成式写嵌套循环的方法
2018/11/08 Python
解决django-xadmin列表页filter关联对象搜索问题
2019/11/15 Python
如何搭建pytorch环境的方法步骤
2020/05/06 Python
Python如何解除一个装饰器
2020/08/07 Python
Python列表的深复制和浅复制示例详解
2021/02/12 Python
纯CSS3实现8组超炫酷鼠标滑过图片动画
2016/03/16 HTML / CSS
html5本地存储_动力节点Java学院整理
2017/07/12 HTML / CSS
Canvas 像素处理之改变透明度的实现代码
2019/01/08 HTML / CSS
内业资料员岗位职责
2014/01/04 职场文书
小学生演讲稿
2014/01/12 职场文书
医院搬迁方案
2014/06/14 职场文书
计生工作先进事迹
2014/08/15 职场文书
暑假安全保证书
2015/02/28 职场文书
2015年禁毒宣传活动总结
2015/03/25 职场文书