Python的文件处理
时间: 2023-11-05 18:05:14 浏览: 98
Python 有很多用于文件处理的内置函数和模块,可以对文件进行读取、写入、复制、删除、重命名等操作。下面介绍一些常用的文件处理方法。
1. 打开文件
要打开一个文件,可以使用 Python 内置的 open() 函数,该函数的语法如下:
```python
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
```
其中,file 是要打开的文件名(包括路径),mode 是打开文件的模式,常见的模式有:
- 'r':只读模式,默认值;
- 'w':写入模式,会覆盖已有文件;
- 'a':追加模式,在原有文件末尾添加内容;
- 'x':独占写入模式,只能创建新文件,如果文件已存在则会报错;
- 'b':二进制模式,用于处理非文本文件,比如图像、视频等;
- 't':文本模式,用于处理文本文件。
buffering 是缓冲大小,encoding 是文件编码格式,errors 是编码错误处理方式,newline 是换行符类型(可选值为 None、' '、'\n'、'\r'、'\r\n'),closefd 是是否关闭文件描述符,opener 是自定义的文件打开函数。
打开文件后,需要使用 close() 方法关闭文件,以释放资源。
2. 读取文件
读取文件可以使用 read() 方法,该方法会将整个文件内容读入到内存中,所以对于大文件会比较耗费内存。如果要逐行读取文件,则可以使用 readline() 方法或者 for 循环遍历文件对象。
```python
# 读取整个文件
with open('file.txt', 'r') as f:
content = f.read()
# 逐行读取文件
with open('file.txt', 'r') as f:
for line in f:
print(line.strip()) # strip() 方法用于去掉行末尾的换行符
```
3. 写入文件
写入文件可以使用 write() 方法,该方法会将指定内容写入到文件中。如果要写入多行内容,则可以使用 writelines() 方法。
```python
# 写入单行内容
with open('file.txt', 'w') as f:
f.write('hello, world!\n')
# 写入多行内容
with open('file.txt', 'w') as f:
f.writelines(['hello\n', 'world\n'])
```
4. 复制文件
复制文件可以使用 shutil 模块的 copy() 方法,该方法会将源文件复制到目标文件中。
```python
import shutil
shutil.copy('source.txt', 'target.txt')
```
5. 删除文件
删除文件可以使用 os 模块的 remove() 方法,该方法会删除指定文件。
```python
import os
os.remove('file.txt')
```
6. 重命名文件
重命名文件可以使用 os 模块的 rename() 方法,该方法会将文件重命名为指定名称。
```python
import os
os.rename('old.txt', 'new.txt')
```
以上是 Python 中一些常用的文件处理方法,还有其他一些方法,比如文件夹的创建、删除、重命名等操作,可以使用 os 模块和 shutil 模块中的函数来实现。
阅读全文