如何逐行读取并实时修改保存txt文件内容?
逐行交互式编辑文本文件的实现方案
完全可以实现你想要的逐行编辑、即时确认保存的需求,下面提供一种简单易用的Python脚本方案:
Python 脚本实现
这个脚本会读取目标文件的每一行,展示当前行内容,你输入修改后的内容并回车,脚本会立即将修改后的内容写入临时文件,所有行处理完成后自动替换原文件,完成最终保存。
import os def line_by_line_editor(file_path): # 读取原文件所有行 with open(file_path, 'r') as f: original_lines = f.readlines() # 创建临时文件存储修改后的内容 temp_file = f"{file_path}.tmp" with open(temp_file, 'w') as temp_f: for line_num, original_line in enumerate(original_lines, start=1): # 显示当前行内容 print(f"第 {line_num} 行原内容: {original_line.strip()}") # 获取用户修改输入,直接回车则保留原内容 modified_content = input("输入修改后的内容(回车保留原内容): ").strip() # 写入内容:输入为空则用原行,否则用新内容加换行 if modified_content: temp_f.write(f"{modified_content}\n") else: temp_f.write(original_line) # 替换原文件 os.replace(temp_file, file_path) print(f"文件 {file_path} 已完成逐行编辑并保存") if __name__ == "__main__": line_by_line_editor("demo.txt")
使用步骤
- 将上述代码保存为
line_editor.py - 确保
demo.txt和脚本在同一目录下 - 运行命令:
python line_editor.py - 按照提示逐行输入修改内容,回车确认即可
说明
- 脚本通过临时文件中转,避免直接修改原文件时出现异常导致内容丢失
- 若直接回车不输入内容,会保留该行原内容
内容的提问来源于stack exchange,提问作者xKralTr
相关产品推荐
相关产品推荐

