一.模块
1.模块介绍
模块是一个包含所有你定义的函数和变量的文件,其扩展名为 .py 。模块可以被其他程序引入,以使用该模块中的函数等功能。这也是使用python标准库的方法。
2.导入模块的方式
(1)import module_name
(2)from module_name import name1 name2 .....
(3)from module_name import * (导入模块中的所有方法用*表示)
(4)from module_name import func as demo_func (给导入的方法func更改一个别名)
二.常用内置模块
1.sys模块
sys模块是与python解释器交互模块
(1)sys.argv[] --> 是从程序外部获取参数的桥梁 -->[]
其中 sys.argv[0] --> 程序本身文件路径
sys.argv[1] --> 外部运行时传递的参数
(2)sys.version --> 用来显示解释器版本信息
(3)sys.path --> 用来显示模块搜索路径
(4)sys.exit() --> 用来退出程序
2.os模块
os模块是与操作系统相关的模块。
(1)os.getcwd() --> 用来打印当前工作路径
(2)os.chdir() --> 改变当前工作路径
(3)os.makedirs() --> 以递归的方式创建多个文件夹(注意这里创建目录下的文件夹,不论是几级的,只要没有就会创建)
(4)os.removedirs() --> 以递归的方式删除多个文件夹(与 os.makedirs() 类似,但是删除文件除了要删除的文件之外不为空时,不能删除)
(5)os.mkdir() --> 创建单个文件夹
(6)os.rmdir() --> 删除单个文件夹
(7)os.path.exists() --> 判断该路径下的文件或文件夹是否存在,返回的是布尔值
(8)os.path.join() --> 拼接路径
3.time模块
time模块是与时间相关的模块。
(1)time.sleep() --> 延迟执行时间
(2)time.time() --> 秒时间戳,记录当前时间
(3)time.localtime() --> 本地时间
time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()) #不能拼接中文
(4)time.strftime() --> 接收以时间元组,并返回以可读字符串表示的当地时间,格式由参数 format 决定。
注意:datetime 也是与时间相关的模块,datetime.datetime.now() --> 输出当前时间。
4.random模块
random模块是随机模块。
(1)random.random() --> 随机生成 [0,1) 的数。
(2)random.randint() --> 随机生成整数(可以传参,且是左闭右闭的)
(3)random.choice() --> 随即在序列中取元素
(4)random.sample() --> 随机取样
(5)random.shuffle() --> 打乱传入的容器内部顺序并返回
(6)random.rangrange() --> 随机取整数(传入的参数是左闭右开的)
5.Json模块
JSON是一种使用广泛的轻量数据格式,Python标准库中的 json 模块提供了 JSON 数据的处理功能。
由于JSON 与 python 中的字典格式非常像。所以 python 中的json模块也相当于是用来使json与字典做转换。但是要注意的是,json中的数据必须使用双引号包裹。
(1)json.loads() --> json转为字典(适用于语句)
(2)json.dumps() --> 字典转为json(适用于语句)
(3)json.load() --> json转为字典(适用于文件)
(4)json.dump() --> 字典转为json(适用于文件)
三.包
为了组织好模块,会将多个模块分为包。python处理包也是相当方便的,简单来说,包就是文件夹,但该文件夹下必须存在 __init__.py 文件。
1.导入包的方法
(1)from 包名 import 模块名
(2)from 包名 import * ——> 模块名.方法名()访问 ,用__all__暴露接口
(3)import 包名 ——>用包名.模块名.方法名()访问,需要import . import demo,demo
使用 from . import 包名 在init里暴露接口。