Python中包和模块的区别
Python中包/文件夹/库/模块之间的区别
模块
模块 modules, 本质上是一个python程序,以.py
为后缀,任何py文件都可以作为一个模块
通过使用模块可有效的避免命名空间冲突
包
Python中的包就是里面装了一个__init__.py
文件的文件夹(前后各有两个下划线)
包具有下面几个性质:
它本身是一个模块
这个模块的模块名不是
__init__.py
而是这个包的名字它的作用是将一个文件夹变为一个python模块
它可以不包含代码,但是在import的时候也做不了什么
不建议在
__init__.py
中写类,以保证py文件的简单它本质上依然是模块,因此一个包里面还可以装其它包
例如core是一个包,core里面有config和models包,
可以通过import core.config 来调用config中的内容
库
严格的来说,Python中没有库的概念,我们常说的库既可以是一个包,也可以是一个模块
文件夹
就是普通的文件夹