大家好!我是Uncle Ben,微信号:jiaszwx
今天跟大家聊一下Python中的package和module。
Package - 包
在Python中,我们所说的package,其实就是一个文件夹,比较特殊的就是在package的文件夹下,会有一个__init__.py的文件。
如果你平时用的是Pycharm,那么你可以看到,在New选项下面,有一个叫:Python Package,从图标上可以看到,和Directory类似,唯一的区别就是图标上多了一个点。
所以你可以这么理解:
Python Package就是多了一个__init__.py文件的文件夹。
怎么验证一下呢?很简单,我们来New一个Python Package:
在项目根目录或者某个文件夹上,点击右键 --> New -->Python Package
输入package名字,按回车
你就会发现在这个包文件夹里自动创建一个__init__.py的文件,而且是一个空文件。
说明
package是一个文件夹,并且package文件夹内必有__init__.py
__init__.py文件可以为空
package文件夹可以有子package文件夹
package是为了方便管理python文件。类似于文档管理,我们通常会把某个话题或者主题相关的文件放在同一个文件夹里面。比如我们可以创建一个名叫:编程资料的文件夹,在这个文件夹下,我们又可以创建不同开发语言的子文件夹:Python,Java,C,C++等等,然后在每个子文件夹下再继续创建子文件夹。。。
举例
比如Python自带的json这个package
再比如flask这个web框架的package
要点总结
包 (Package) 是一个含有__init__.py文件的文件夹
包 (Package) 是为了管理不同功能的.py文件而设计的,类比为了管理不同种类文件,创建不同的文件夹
包 (Package) 是可以有0到多个子包的
包 (Package) 里一般包含若干个模块(接下来要讲的概念)
使用时,一般是:
from 包名 import 模块名
from 包名.模块名 import 类名
Module - 模块
在Python中,我们所说的module,其实就是一个.py的文件,在这个文件里可以有定义好的类(Class),方法(Function)和属性(Attribute)。
说明
一个module就是一个.py的文件
module里一般有定义好了的类(Class),方法(Function)以及属性(Attribute)
使用时,一般在Python代码最前面直接import即可。例如:
import os
import os, re, time
举例
要点说明
模块 (Module) 是一个.py文件
模块 (Module) 是包含了一类特定功能代码块的集合
模块 (Module) 里定义了类,方法以及属性
模块 (Module) 名就是.py的文件名,并且是小写字母
好了,这次分享就到这里。有问题想讨论,可以添加我的微信:jiaszwx
觉得还不错?点个👍呗!