os模块
通过os模块我们可以与操作系统交互, 控制文件和文件夹
对文件夹操作
# 判断是否为文件夹
os.path.isdir()
# 创建文件夹
os.mkdir()
# 删除文件夹
os.rmdir()
# 列出文件夹内所有文件(返回列表)
os.listdir()
# 当前文件所在文件夹路径
os.getcwd()
# 所在文件夹的路径
os.path.dirname()
# 拼接文件路径
res = os.path.join(r'C:\Users\Black\Documents\Python learning', 'test', 'test.py')
print(res) # C:\Users\Black\Documents\Python learning\test\test.py
# 判断路径是否存在
os.path.exists()
对文件进行操作
# 判断是否为文件
os.path.isfile()
# 删除文件
os.remove()
# 重命名文件
os.rename(原来, 现在)
# 获取文件路径
os.path.abspath(__file__)
sys模块
# 命令行参数List,第一个元素是程序本身路径
res = sys.argv
# 返回所有已经导入的模块列表
sys.modules.keys()
json 和pickle模块
序列化: 把对象(变量)从内存中变成可存储或传输的过程称之为序列化
优点: 可持久保存; 跨平台数据交互
python数据类型---序列化---> json串
json串---反序列化---> python数据类型
注意: 1. 处理文件时用dump 和 load, 其他情况用dumps 和 loads
2. json串中只有双引号
pickle 只能用于Python, 但是可以存储Python中所有的数据类型
logging模块
日志等级
日志类型
描述
level
DEBUG
最详细的日志信息,典型应用场景是 问题诊断
10
INFO
信息详细程度仅次于DEBUG,通常只记录关键节点信息,用于确认一切都是按照我们预期的那样进行工作
20
WARNING
当某些不期望的事情发生时记录的信息(如,磁盘可用空间较低), 但是此时应用程序还是正常运行的
30
ERROR
由于一个更严重的问题导致某些功能不能正常运行时记录的信息
40
CRITICAL
当发生严重错误,导致应用程序不能继续运行时记录的信息
50
当指定一个日志级别之后, 会记录大于或者等于这个级别的日志信息, 小于的会被丢弃
Python 默认打印级别大于等于30的日志类型
longging模块的四大组件
组件名称
对应类名
功能描述
日志器
Logger
提供了应用程序可一直使用的接口
处理器
Handler
将logger创建的日志记录发送到合适的目的输出
过滤器
Filter
提供了更细粒度的控制工具来决定输出哪条日志记录,丢弃哪条日志记录
格式器
Formatter
决定日志记录的最终输出格式
自定义配置
定义logger对象
bigb_logger = logging.Logger('bigb')
设置日志格式
formatter1 = logging.Formatter('%(asctime)s - %(name)s -%(thread)d - %(levelname)s -%(module)s: %(message)s', datefmt='%Y-%m-%d %H:%M:%S %p ', )
设置handler
h1 = logging.FileHandler('bigb.log')
为handler配置格式
h1.setFormatter(formatter1)
把handler绑定给logger对象
bigb_logger.addHandler(h1)