作者:Gakki
1. 模式的介绍
模式 | 可做操作 | 若文件不存在 | 是否覆盖 |
---|---|---|---|
r | 只能读 | 报错 | - |
r+ | 可读可写 | 报错 | 是 |
w | 只能写 | 创建 | 是 |
w+ | 可读可写 | 创建 | 是 |
a | 只能写 | 创建 | 否,追加写 |
a+ | 可读可写 | 创建 | 否,追加写 |
2. 模式的区别
- r 只读,r+ 读写,不创建。即需要事先存在一个文件以供读/读写,若不存在文件会报错。
- w 新建只写,w+ 新建读写,二者都会将文件内容清空。即事先不需要有该文件存在,若已经存在则会覆盖( 以 w 方式打开,不能读出。w+ 可读写)
- w+ 与 r+ 的区别:
- w+ 可读可写,若文件不存在,创建
- r+ 可读可写,若文件不存在,报错
- r+ 与 a+ 的区别:
- r+ :覆盖写
- a+ :追加写
注:
- read 缩写 r,write 缩写 w,all 缩写 a;
- 使用 " r " 一般情况下最常用的,但是在进行读写二进制文件时,可能会出现文档读取不全的现象;使用"
rb " 按照二进制位进行读取的,不会将读取的字节转换成字符,二进制文件用二进制读取用" rb "; " rt " 模式下,python 在读取文本时会自动把 \r\n 转换成 \n,文本文件用二进制读取用 " rt "。
网友评论