文件操作中如何修改光标位置
时间: 2024-02-05 19:04:50 浏览: 23
在 Python 中,可以使用文件对象的 `seek()` 方法来修改文件光标的位置。`seek()` 方法的参数为文件指针的偏移量和起始位置,起始位置有以下三种:
- 0:表示文件开头
- 1:表示当前位置
- 2:表示文件结尾
例如,如果要将光标位置移到文件开头,可以调用 `seek(0, 0)` 方法;如果要将光标位置移到文件末尾,可以调用 `seek(0, 2)` 方法。
下面是一个示例,演示如何使用 `seek()` 方法修改文件光标位置:
```python
with open('example.txt', 'r') as f:
# 读取文件前5个字符
content = f.read(5) # 'Hello'
# 将光标位置移到文件开头
f.seek(0, 0)
# 读取整个文件
content = f.read() # 'Hello, world!\nHow are you?\n'
# 将光标位置移到文件结尾
f.seek(0, 2)
# 写入新的文本
f.write('This is the end.')
# 将光标位置移到文件开头
f.seek(0, 0)
# 读取整个文件
content = f.read() # 'Hello, world!\nHow are you?\nThis is the end.'
```
在这个例子中,我们首先使用 `read()` 方法读取文件的前5个字符,然后使用 `seek()` 方法将光标位置移到文件开头,再使用 `read()` 方法读取整个文件。接着,我们将光标位置移到文件结尾,使用 `write()` 方法写入新的文本,然后再将光标位置移到文件开头,使用 `read()` 方法读取整个文件。注意,在使用 `write()` 方法写入新的文本之前,需要将文件以写入模式(`'w'`)打开。