1、什么是模块?
1.一个.py就是一个模块。
2.有什么好处?
提高可维护性;避免函数变量名冲突。
3.如何分类:
内置 ——Python安装时就已经自带,如:sys 、os....
第三方开源 ——世界各地开发者贡献的py文件,通过 pip install 安装
自定义 ——自己写的py文件
注意:导入模块即相当于执行了模块。
4.如何调用的?
import module :直接导入模块
from module import xx :在模块中导入某个函数
from module import xx as xx :导入某个函数时并且把他重命名,方便以后调用时简写。
from module.xx.xx import * :导入全部的函数
5.模块的查找路径: ‘’,从当前py的目录找——》从python自带和第三方库的路径找
只要在一个目录下匹配到,就立刻导入,不再往后找。
6.开源模块的安装:
pip install命令,安装好了,用import xx 就可以调用。
2. 什么是包?
1.包——就是把相关功能的.py文件放在同一个文件夹下,这个文件夹就叫包。
2.不同包之间的模块要怎样导入?
form 包名 import xx
3.包的路径下要有(__init__.py)这个文件,来标识这个文件夹是一个包。
3.包的导入
跨包导入
现在想在manage.py 导入 crm目录下views.py
from crm import view
为什么能直接导入? 由于环境变量里已经添加到‘’,这个代表了把当前文件夹的路径添加到环境变量里,所以编译器可以直接导入。
跨模块导入
现在想在crm下的view.py 导入proj下的setting.py ,要怎样做?
1.如果直接在view.py下直接写from proj import setting
2.运行的话会报错,说找不到路径。
3.为什么? 是因为环境变量中没有proj 的路径
绝对导入、相对导入