一、open文件打开
| r | 只读 | rb | 文件不存在→报错;不能写 |
| w | 覆盖写 | wb | 不存在自动创建;打开瞬间清空原有内容 |
| a | 追加写 | ab |
不存在自动创建;在文件末尾追加,不覆盖 |
fp = open("a.txt","w",encoding="utf‑8")
fp.write("你好")
fp.close()
打开文件用完必须释放资源
1、fp.close()
2、with open(路径,打开方式,encoding="utf‑8") as f:
encoding="utf‑8",不指定会出现中文乱码
with 语句:离开代码块自动关闭文件,不用手动 close
二、文件读取相关方法+文件指针
文件对象内部有一个文件指针,记录当前读写位置;读完之后指针跑到末尾,再次读取返回空字符串''
1、fp.read(n)
读取全部 / 指定 n 个字符;指针向后移动
2、fp.readline()
读取一行,返回字符串;读到文件末尾返回空字符串''
3、fp.readlines([size])
读取多行,返回行的列表,每一行带换行符\\n;执行完指针直接到文件末尾
执行readlines()之后,直接迭代fp拿不到内容;需要fp.seek(0)重置指针到开头
readlines 指定 sizehint 之后,会把指标所在的完整一行读完;readline 带 size 参数,会直接截断本行,不会读完一整行
4、fp.seek(0)
把文件指针重置到文件起始位置
5、fp.flush()
强制把缓冲区内存的数据刷新写入磁盘
触发写磁盘三种情况:
①调用flush()强制刷新 ②调用close()关闭文件 ③缓冲区存满自动刷新
三、json模块(轻量级数据交换格式)
1、操作字符串(内存)
json.dumps():Python 对象 → json 字符串
json.loads():json 字符串 → Python 对象
2、直接操作文件对象fp
json.dump(obj,fp):把 python 对象写入文件
json.load(fp):从文件读取,转为 python 对象
常用参数:
json.dump(data,fp,ensure_ascii=False,indent=2)
①ensure_ascii=False:中文不转义为 \\uXXXX
②indent=2:格式化缩进输出
网硕互联帮助中心




评论前必须登录!
注册