init.py 文件的作用以及意义
介绍一:
这个文件(这个文件定义了包的属性和方法)其实它可以什么也不定义;可以只是一个空文件,但是必须存在。如果 init.py 不存在,这个目录就仅仅是一个目录,而不是一个包,它就不能被导入或者包含其它的模块和嵌套包。
或者可以这样理解。这样,当我们导入这个包的时候,init.py文件自动运行。帮我们导入了这么多个模块,我们就不需要将所有的import语句写在一个文件里了,也可以减少代码量。
不需要一个个去导入module了。
介绍二:
init.py 中还有一个重要的变量,叫做 all。我们有时会使出一招“全部导入”,也就是这样: from PackageName import * 这时 import 就会把注册在包 init.py 文件中 all 列表中的子模块和子包导入到当前作用域中来
介绍三:
看到很多人写的代码,有时候他们把类写在该文件里,一开始不明白,后来发现
在init.py文件中import的东西可以在其他地方使用的时候直接导入。我们用flask框架里redirect方法,我们一般使用的时候都是写这样的导入语句,
from flask import redirect
但是redirect不是flask包下模块里的方法。认识查看的flask包下面的init.py源码