1.文件复制
单个文件复制
多个文件复制 使用系统模块 os 获取指定文件夹的所有文件名
复制流程:根据地址读取源文件,将读取的写入新地址,地址用os模块获取的文件名和文件夹名整合而成。
2.CSV文件的写入与读取 导入CSV模块
CSV文件的读取 csv.reader
CSV文件的写入 csv.writer
CSV文件字典读取 csv.DictReader
注:按ctrl,鼠标往DectReader ,当手掌图标出现,点进去看函数解释,普通参数必填项, 2个要填,f为当前的流,还有1个为fieldnames
如DicReader参数 fieldname未填,默认文件第一行为表头。
如下图1为文件第一行没有字段名的结果,图2为定义filename后的结果。
CSV文件字典写入 csv.DictReader
注:不含表头结果如下:
注:写入表头结果如下:
3.序列化和反序列化
序列化 json
json.dumps([]) ---> '[]' 序列化
json.loads('[]') ----> [] 反序列化
jison.dumps将复杂的字典格式names转化为字符串格式
反序列化 json all的类型为str, 用 json.loads转化为字典格式,
get 根据键拿到值
序列化和反序列化 pickle(需要按wb写入才可以用rb读)
注意:pickle都是以二进制的形式操作的
pickle.dumps([]) ----> b' '返回的结果是二进制
pickle.loads(b'') ---> []将二进制返回成原有类型
写入 序列化:
读 反序列化
补充 1. 按二进制写入,按二进制读取
ASCII码 英文等--------Unicode(各国常用语言)----utf-8 utf-16
gbk gbk2312 针对中文 拿什么编码,拿什么解码