模块介绍
模块,是用一些代码实现的某个功能的代码集合。
类似与函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用,提供了代码的重用性和代码间的耦合。对于一个复杂的功能,可能需要多个函数才能完成(函数又可以放在不同的 .py 文件中),多个 .py 文件组成的代码集合就称为模块。
模块分为三种:
- 自定义模块(自己写的功能)
- 内置标准模块(又称为标准库,安装Python之后自带的模块)
- 开源模块(别人写的模块,需要安装之后才可以使用)
开源模块
下载安装有两中方式:
1,使用系统的工具
yum
pip
apt-get
…
2,下载源代码
下载源码
解压源码
编译源码(python setup.py build)
安装源码(python setup.py install)
注意:
在使用源码安装时,需要使用到gcc编译和python开发环境,所以需要先安装
yum install gcc python-devel
或
apt-get install python-dev
模块安装成功之后会自动安装到 sys.path 中的某个目录,如:
~/python.x/site-packages/
x 代表python的版本
模块的导入
模块的导入方法
- import module
- from xxx.xxx.xxx.module import xx
- from xxx.xxx.xxx,module import xx as rename
- from xxx.xxx.xxx.module import *
说明:
1,第1种方法适用与内置模块或使用模块的代码文件(A)与模块文件(B)在同一个目录,比如:
内置模块
import os
自定义模块
在A.py中写
import B
2,第2,3,4种方法模块在别的目录下目录,在导入时使用 . (点)作为目录的分割
3,第3种方法适用于所需要调用的模块比较长或者难记,这个办法是给模块起一个别名
4,第4中方法使用于把目录下的所有模块都导入
注意:
sys.path 类似系统中的环境变量,在模块导入的时候会检测导入的模块是否存在于这些目录,如果存在就导入,如果不存在则会报错
如果想把模块所在的目录加入到 sys.path 中需要
import sys os
new_path= os.path.abspath('../')
sys.path.append(new_path)