网站首页 > 技术文章 正文
事实上'__main__'是一个作用域的名称,当在脚本中读取、执行、交互时,模块的__name__等于'__main__'。
一个实例让你理解Python中的__name__及__main__的关系
#一个名为test的py文件
a = __name__
print(a)
#输出结果为__main__
#一个名为test_2的py文件(这里调用上面那个test.py)
import test
test.a
#输出结果为test
- 这里第一个test文件可以理解为打印出脚本自身的模块名称,但由于(在自身调用会显示__main__)这个机制他并不会显示出自身模块名称。
- 也就是说如果我在test中调用__name__他的结果是__main__。
- 但当我们在test_2中调用test文件,则会显示模块名称(即文件名称),这里为test。
那么if __name__ == "__main__"的含义就不言而喻,就是防止其他脚本调用该模块。
如果还不是很理解他们两之间的关系,我们就以更通俗的说发来介绍:
小明看着镜子里面的自己:小明认识镜子里面的人是自己
(也就是 __name__ == "__main__",小明知道镜子里面的人是自己)
而小明的朋友看见小明时:小明的朋友也认识眼前的人,知道他叫小明
(也就是当他被其他脚本调用时会显示出被调用脚本的模块名称,而不是main,就是说小明的朋友看见小明以后不会说看见了自己,而是会喊出他的名字“嗨,小明”)
猜你喜欢
- 2024-11-20 python 代码中 __main__ 有什么用途?
- 2024-11-20 看完文章让你读懂if __name__=='__main__'的含义,面试不用愁
- 2024-11-20 Python if __name__ 的作用介绍
- 2024-11-20 Python基础--Python中的main、__name__ == "__main__"
- 2024-11-20 Python中的 if __name__ == "__main__"作用?
- 2024-11-20 了解 Python 中 if __name__ == "__main__" 的作用
- 2024-11-20 算法金 | Python 中有没有所谓的 main 函数?为什么?
- 2024-11-20 Python 中 if __name__ == '__main__' 的解释
- 2024-11-20 在Python中定义Main函数
- 2024-11-20 你必须要知道的Python中的main函数
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)