You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现TXT文件内容反转并插入指定行的问题求助

问题解决思路与代码修正

你的代码存在三个问题:

  • 文件名匹配错误:要读取的是newText.txt而非text.txt,要写入的是newerText.txt而非newtext.txt
  • 反转后出现两行同行,原因是原文件每行换行符处理不一致(比如最后一行line 3可能没有末尾换行符),导致写入时内容连在一起
  • 未实现插入指定行的需求

修正后的代码如下:

# 读取原文件并统一处理换行符
with open('newText.txt', 'r') as f:
    # 去掉每行末尾的换行符,避免原文件换行混乱导致的问题
    lines = [line.rstrip('\n') for line in f]

# 构造目标内容列表:取原文件最后一行 + 插入指定行 + 原文件倒数第二行到第一行的内容
target_lines = [lines[-1]] + ['Python Inserted a new line'] + lines[-2::-1]

# 写入新文件,每行末尾添加换行符保证格式正确
with open('newerText.txt', 'w') as f:
    for line in target_lines:
        f.write(line + '\n')

代码说明:

  • rstrip('\n')统一去掉每行的换行符,后续写入时再统一添加,彻底解决换行不一致导致的同行问题
  • lines[-1]直接获取原文件最后一行(line 3),lines[-2::-1]取原文件倒数第二行到第一行的内容(即line 2、line 1),中间插入指定行即可得到目标顺序
  • 写入时每行都添加\n,确保最终文件每行独立换行

运行后newerText.txt的内容会完全符合要求:

line 3
Python Inserted a new line
line 2
line 1

内容的提问来源于stack exchange,提问作者Steven Lindsey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 15:55:27