文章目录
python数据分析学习笔记
第10节
一、模块程序设计
1、模块编程流程
模块编程分为四步:
①设计 API,进行功能描述。
②编码实现 API 中描述的功能。
③在模块中编写测试代码,并消除全局代码。
④使用私有函数实现不被外部客户端调用的模块函数
2、模块的 API 和功能描述
API(Application Programming Interface 应用程序编程接口):
是用于描述模 块中提供的函数和类的功能描述和使用方式描述
在模块编程中,要先实现的就是API,在实现API的功能,最后在其他模块导入本模块进行调用。
二、模块的导入
1、import 语句导入
import 语句的基本语法格式如下:
import 模块名 #导入一个模块
import 模块 1,模块 2… #导入多个模块
import 模块名 as 模块别名 #导入模块并使用新名字
import 加载的模块分为四个通用类别:
①使用 python 编写的代码(.py 文件)
②已被编译为共享库或 DLL 的 C 或 C++扩展
③包好一组模块的包
④使用C编写并链接到python解释器的内置模块
2、from…import 导入
基本语法格式如下:
from 模块名 import 成员 1,成员 2,…
导入一个模块中的所有成员:
from 模块名 import *
注:尽量避免impor 因为不知道会有多少个导入的名字生成,可读性差。
3、import 语句和 from…import 语句的区别
import 导入的是模块。from…import 导入的是模块中的一个函数/一个类。
4、import()动态导入
import 语句本质上就是调用内置函数__import__()可以通过它实现动态导入。
给 import()动态传递不同的的参数值,就能导入不同的模块。
三、包package 的使用
1、包的结构
包都带有一个__init__,没有这个只能算是文件,图中的a是上层包,下面有一个aa是子包。a里面包含了A,A2,A3模块,AA是aa里面的模块。
2、用*导入包
目的是:文件系统找出包中的子模块
3、包内引用
子包内的引用,可以按相对位置引入子模块 以 aa 包下的 module_AA 中导入 a 包下内容为例:
from … import module_A #…表示上级目录 .表示同级目录
from . import module_A2 #.表示同级目录
4、sys.path和模块搜索路径
一般按照如下路径寻找模块文件(顺序查找):
①内置模块
②当前目录
③程序的主目录
④pythonpath 目录(如果已经设置了 pythonpath 环境变量)
⑤标准链接库目录
⑥第三方库目录(site-packages 目录)
⑦.pth 文件的内容(如果存在的话)
⑧sys.path.append()临时添加的目录