[Python] 关于__init__.py

当目录结构为下面这样
└── utils/
│ ├── __init__.py
│ └── config.py
├── test.py


每个文件夹下都有__init__.py,一个目录如果包含了__init__.py 文件,那么它就变成了一个包(package)。
其中__init__.py可以为空,也可以定义包的属性和方法,但其必须存在,其它程序才能从这个目录中导入相应的模块或函数

config.py中的内容为:

def test():
        print(111)

test.py中的内容为:

import utils.config
utils.config.test()

首先需要了解 __name__ 是属于 python 中的内置类属性,就是它会天生就存在与一个 python 程序中,代表对应程序名称。
一段程序作为主线运行程序时其内置名称就是 __main__, 作为模块被调用时,则它的 __name__ 就是它自己的名字,一般可以用于判断是直接执行还是被别的模块调用

if __name__ == '__main__':
  main()

 

原文地址:https://www.cnblogs.com/taoshihan/p/12217251.html