__main__ —— Top-level code environment
在python中,__main__ 这个特殊的名字主要用于两个地方:
- python程序的顶层环境的名字,可以用
__name__ == '__main__'来检查。 - python包中的一个文件:
__main__.py。
__name__ = '__main__'
- 当python中的模块或包导入时,
__name__被设置为模块的名字(文件名去掉.py后缀):
|
|
- 如果这个文件是包的一部分,那么
__name__也会包含父包的路径:
|
|
- 如果模块是直接在顶层代码环境中执行的,那么
__name__的值就会被设置成字符串'__main__'
什么是顶层代码环境?
__main__ 是顶层代码运行环境的名称。“顶层代码”是指由用户指定的最先开始运行的那一个 Python 模块。之所以它是“顶层”,是因为它将导入程序所需的所有其它模块。有时“顶层代码”被称为应用程序的 入口点。
Python 包中的 __main__.py
__main__.py 文件可以用来为一个包提供命令行接口。
|
|
当使用 -m 标志从命令行直接调用软件包本身时,将执行 __main__.py 。比如说。
|
|
这个命令将导致 __main__.py 的运行。