如何使用Python读取test.txt文件中的唯一数字,执行减一操作后,再将更新后的值覆盖写回同一文件?
时间: 2024-12-14 15:13:31 浏览: 6
在Python中,你可以使用内置的`open()`函数打开文件,并结合`readlines()`或者`with open()`语法来逐行读取文件内容。为了找到唯一的数字并执行减一操作,你需要遍历每一行,检查是否为数字,如果是,则进行减一处理,并使用`write()`方法将结果写回到文件。下面是一个示例:
```python
# 打开文件以读写模式 ('r+', 'w+')
with open('test.txt', 'r+') as file:
# 读取文件内容到一个列表中
lines = file.readlines()
# 遍历每行
for i, line in enumerate(lines):
# 尝试转换为整数,如果能转换则说明是数字
try:
num = int(line.strip()) # strip()去除换行符
except ValueError:
continue # 如果不是数字跳过
# 减一操作
num -= 1
# 写回文件,先移动到当前位置
file.seek(i)
# 更新行内容并写回去
file.write(str(num))
file.truncate() # 确保文件大小不会超过实际更改的内容长度
# 关闭文件,因为with语句会自动关闭
```
阅读全文