python__name__原理及用法详解
人气:01、python中__name__是什么意思?
很多python的初学者可能都会遇到一个问题:__name__是什么意思?
在刚开始学习python的时候,我们总会看到这样一句代码:
if __name__ == "__main__":
一开始我以为这句代码的意思和C语言中的main函数一样,程序从这里开始执行,但后来经过查询资料发现,两者并不完全相同,这里做一些解释:
- __name__是一个变量,前后加了双下划线是因为这是系统定义的名字(python中系统变量都是双下划綫开头结尾),普通变量不使用这种命名方式;
- python有很多模块,这些模块是可以独立运行的(这一点与C语言和C++的头文件不同);
- __name__是用来标识模块名字的一个系统变量。这里分两种情况:第一种情况指的是当前运行的模块,那么当前模块__name__的值就为"__main__";第二种情况指的是该模块是使用import导入的模块,那么这个被导入模块的__name__变量的值为该模块的文件名(去掉.py)。
2、测试一下上面内容的正确性
首先创建两个测试文件,代码如下
test_one.py:
def test_function(): print(__name__) def test1_function(name): print(type(name), name)
test.py:
from test_one import * test_function() test1_function(__name__)
运行test.py文件,得到下面的结果:
您可能感兴趣的文章:
- Python关于__name__属性的含义和作用详解
- 如何使用python3获取当前路径及os.path.dirname的使用
- python命名空间(namespace)简单介绍
- 详解python中__name__的意义以及作用
- 解决Python找不到ssl模块问题 No module named _ssl的方法
- 正确理解Python中if __name__ == ''__main__''
- Python 获取主机ip与hostname的方法
- Python os.rename() 重命名目录和文件的示例
- 解决python "No module named pip"的问题
- Python命名空间namespace及作用域原理解析
加载全部内容