文件的打开与关闭
打开 : 用 open('文件路径','模式') ,若文件存在则打开,若文件不存在则创建
模式 : w :可写
r : 可读
关闭 : 用close
创建文件
打开文件
文件路径
可以写 绝对路径 也可以写相对路径
文件关闭 close
文件的读写
打开就要关闭 !!
写 write 模式 w
注意 这里若文件存在,那么就会清空原来的数据,然后再写入
追加 write 模式 a
读数据 read 模式 r
一字节一字节读取,效率低
读数据 readline 模式 r
一行一行读取,但只能读取第一行
读数据 readlines 模式r
它可以按照行来读取,但是会将所以数据都读取到 并且以一个列表的形式进行返回
序列化和反序列化
注意 : 字符可以写到本地文件,但对象(字典,列表,元组等) 不能写到本地文件。
序列化 : 设计一套协议,按照某种规则,把内存中的数据转换为字节序列,保存到文件
对象 ==> 字节序列 序列化
反序列化 : 从文件的字节序列恢复到内存中
字节序列 ==> 对象 反序列化
序列化
dumps
dump
import json
json.dump(要插入的对象,要插入的位置)
dump 和dumps的区别
dumps 需要把 先把一个对象给一个变量,然后再利用json.dumps 进行序列化
dump 直接 在json.dump 中写入要插入的对象 ,和要插入的位置
反序列化
loads
load
loads 和 load 的区别
loads 也是 需要先把文件中的数值进行读取出来,给一个变量,再把这个变量利用 json.loads 进行反序列化
load 不需要进行先读,直接再json.load 中写入要读取的位置,那么就直接可以把里面的数值读取出来了
异常
当你读一个不存在的文件时,就会报错,但是我们需要给客户看到 它出错了,就要写异常
try:
可能出现的异常代码
except 异常类型:
友好提示