模块就是一系列功能的集合体
模块分为四个通用类别:
1、使用python编写的.py文件
2、一被编译共享库dll的c或c++扩展
3、把一系列的模块组织到一个文件夹(注:文件夹下有一个__ init __.py文件,该文件称之为包)
4、使用c编写并链接到python解释器的内置模块
模块有三种来源:
1、内置模块
2、第三方模块
3、自定义模块
2、为何要用模块
1、使用内置的或者第三方模块的好处是:拿来主义,极大提升开发效率
2、使用自定义的好处是:将程序部分组件共用的功能提取出放到一个模块中,减少代码冗余
3、如何使用模块
import 导入
首次导入模块会发生三件事
1、会产生一个模块的名称空间
2、执行spam.py的内容,将产生的名字丢到模块的名称空间中
3、在当前执行文件中拿到一个名字spam,该名字指向spam.py的名称空间
之后导入直接引用首次导入成果
from ...... import.......导入
首次导入模块会发生三件事
1、会产生一个模块的名称空间
2、执行spam.py文件的内容,将产生的名字丢到模块的名称空间中
3、在当前执行文件中拿到名字read1,该名字执行模块的名称空间中的read1
import总结
优点:指名道姓的问某一个名称空间要名字,不会与当前执行文件名称空间的名字冲突
缺点:引用模块中的名字不行加前缀(模块名.) 使用不够简洁
from。。。import。。。总结
优点:引用模块中的名字不用加前缀(模块名.)使用更为简洁
缺点:容易与当前执行文件名称空间中的名字冲突
4、模块的搜索路径
查找模块路径的优先级
1、内存
2、内置模块
3、sys.path
5、软件开发的目录规范
ATM:根目录
bin:执行文件夹
start.py执行文件
conf:配置文件夹
settings.py:配置文件
core:业务文件夹
src.py主要存放业务与用户交互功能
lib:自定义模块文件夹
common.py主要存放自定义功能
db:
log:日志文件夹
transcation.log日志文件
Readme