Python文件操作学习笔记
Python 文件操作学习笔记
1. 打开与关闭文件
推荐使用 with open(),代码块结束后会自动关闭文件,即使发生异常也会关闭。
1 | |
demo.txt:文件路径。r:打开模式。encoding:文本编码,读写时应保持一致。
2. 常用打开模式
| 模式 | 含义 | 文件不存在时 |
|---|---|---|
r |
只读,默认模式 | 报错 |
w |
写入,清空原内容 | 创建 |
a |
追加到文件末尾 | 创建 |
x |
创建新文件并写入,已存在则报错 | 创建 |
b |
二进制模式,如 rb、wb |
取决于主模式 |
+ |
同时允许读写,如 r+ |
取决于主模式 |
注意:w 在打开文件时就会清空内容。 创建文件不会自动创建父文件夹。
3. 读取文件
1 | |
常用方法:
| 方法 | 作用 |
|---|---|
read() |
读取全部内容 |
read(n) |
最多读取 n 个字符;二进制模式为字节 |
readline() |
读取一行,通常保留末尾换行符 |
readlines() |
读取所有行,返回列表 |
逐行读取适合较大的文本文件:
1 | |
读到末尾时,文本模式返回 "",二进制模式返回 b""。空白行通常是 "\n",与文件末尾不同。
4. 写入与追加
1 | |
write():写入字符串,不会自动换行。writelines():写入一组字符串,也不会自动添加换行符。- 写入数字前,需要用
str()转为字符串。
1 | |
5. 二进制文件
图片、音频等使用二进制模式,不指定 encoding。
1 | |
二进制读写使用 bytes,文本读写使用 str。
6. 文件指针
文件指针表示下一次读写的位置,读取后会向后移动。
1 | |
tell():返回当前位置;文本模式下不能简单理解为字符数。seek(0):回到文件开头。- 文本模式不适合按任意字节位置移动。
7. 路径与文件管理
使用 pathlib.Path 操作路径:
1 | |
常用方法:
| 方法 | 作用 |
|---|---|
exists() |
判断路径是否存在 |
is_file() |
判断是否为文件 |
is_dir() |
判断是否为文件夹 |
iterdir() |
遍历文件夹中的直接子项 |
rename(新路径) |
重命名或移动 |
unlink() |
删除文件 |
rmdir() |
删除空文件夹 |
相对路径以当前工作目录为基准,不一定是 Python 脚本所在的目录。
Windows 路径可以写成:
1 | |
8. 异常处理
1 | |
注意点:读取用 r,覆盖用 w,追加用 a;文本指定编码,二进制加 b;优先使用 with。
Python文件操作学习笔记
https://umeshu.cn/2021/04/18/Python/Python文件操作学习笔记/