Python3笔记044 - 8.1 模块与包
第8章 模块
8.1 模块与包
模块
在python中,一个扩展名为.py
的文件就称之为一个模块,模块的英文是modules
在python中,模块有两个作用:一个是规范代码,另一个是方便其他程序使用已经编写好的代码。
1、创建模块
以模块名+.py
的形式命名,文件内部有变量定义或函数定义或类定义。
2、导入模块
import modulename [as alias]
在使用import语句导入模块时,每执行一条import语句都会创建一个新的命名空间,并且在该命名空间中执行与.py
文件相关的所有语句。在执行时,需在具体的变量、函数、类名前加上模块名.前缀。
如果不想在每次导入模块时都创建一个新的命名空间,而是将具体的定义导入到当前的命名空间中,这时可以用from...import语句。
from modulename import member
导入支持通配符*,导入该模块里的所有内容
from modulename import *
3、查找模块的规则
当使用import语句导入模块时,默认情况下,会按照以下顺序进行查找。
- 在当前目录下查找。
- 到
PYTHONPATH
下的每个目录中查找。 - 到python的默认安装目录下查找。
以上各个目录的具体位置保存在标准模块sys的sys.path
变量中,
可以通过以下代码输出具体的目录
import sys # 导入标准模块sys
print(sys.path) # 输出具体目录
output:
'''
D:\01Python\pythonbasic
D:\01Python
D:\Program Files\Python\python37.zip
D:\Program Files\Python\DLLs
D:\Program Files\Python\lib
D:\Program Files\Python
D:\Program Files\Python\lib\site-packages
'''
在PYTHONPATH
环境变量中添加指定的目录到sys.path
中
# 第一种方法添加路径
sys.path.append()
# 第二种方法:将自定义的模块放到第三方库site-packages的目录下
D:\Program Files\Python\lib\site-packages
4、下载和使用第三方模块
pip <comand> [modulename]
比如安装numpy
pip install numpy
pip list
import numpy
包
包简单理解就是文件夹,只不过在该文件夹下必须存在一个名称为__init__.py
的文件。
包的作用是将一组功能相近的模块放在一个目录下。
1、创建包
创建包实际上就是创建一个文件夹,并且在该文件夹中创建一个名称为__init.py_
的python文件。在__init__.py
中,可以不编写任何代码,也可编写,在导入包时会自动执行。
2、导入包
import 完整包名.模块名
from 完整包名 import 模块名
from 完整包名.模块名 import 定义名
敬请关注个人微信公众号:测试工匠麻辣烫