模块的基础知识
1、什么是模块:
模块是一组功能的集合
python中一个功能就是一个函数
一个py文件就是一个模块
2、模块的分类:
(1)自定义模块
(第三方模块也属于自定义 它是别的程序员写的)
(2)内置模块
是c语言写的 然后连接到python解释器中
例如 time模块
(3)已经编译为DLL c或c++
(4)包
3、如何定义模块:
创建一个py文件 把你的功能写到文件中
4、如何使用模块:
import 关键字 用于导入模块到当前文件中
例如:import time
5、import 的其他写法
(1)import xxx as xxx
给模块取别名 用于简化书写
(2)import xxx,xxx
一次导入多个模块
(3)from xxx import xxx
从模块中导入某个名字到当前名称空间
注意 避免名称冲突
如果冲突了 按照就近查找原则
(4)from xxx import xxx,xxx,xx
从模块中导入多个名称
(5)from xx import *
从模块中导入多个名称
__all__用于控制 使用者可以使用哪些名称
(6)from xxx import xxx as xx
取别名
from 和 import 除了导入的名称不同 其他特性一致
py文件的两种执行方式
1、作为执行文件 (右键run)
2、作为模块导入
__name__这个名称 可以获取当前执行状态
如果是__main__说明当前是执行文件
否则 说明是作为模块
于是乎有了一下代码
if __name__ = '__main__':
print('作为执行文件')
else:
print('作为模块导入了')
重复导入模块时 模块中的代码不会重复执行 仅在第一次导入时执行
模块的搜索顺序
内存中已经加载的 ->内置模块- >sys.path
通常我们在编写项目时 会自己将模块的路径加入到sysy.path中