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

如何去除Python代码运行后输出末尾的意外换行符?

问题分析

你的代码里有两个问题导致末尾出现多余换行:

  1. 用f.split("\n")拆分文件内容时,如果原文件末尾带有换行符,会在拆分后的列表最后生成一个空字符串。循环执行print(word_new)时,会给这个空字符串也加上默认的换行,最终多出一行空白。
  2. word.rstrip("\n")完全无效——因为split("\n")已经把换行符作为分隔符剔除了,拆分后的每个元素里根本不存在换行符。
解决方法

给你几个可行的方案:

方案1:直接迭代文件对象(最简洁安全)

不需要一次性读取整个文件,直接循环文件对象即可自动按行读取,同时用with语句能自动关闭文件:

with open("/home/pride_and_prejudice.txt") as f:
    for line in f:
        print(line.rstrip("\n"))

方案2:过滤空字符串

如果坚持用原读取方式,循环时判断内容非空再打印:

f = open("/home/pride_and_prejudice.txt").read()
for word in f.split("\n"):
    if word:
        print(word)

方案3:用splitlines()替代split("\n")

splitlines()会自动适配不同系统的换行符,且不会在末尾生成空字符串:

f = open("/home/pride_and_prejudice.txt").read()
for line in f.splitlines():
    print(line)

内容的提问来源于stack exchange,提问作者Ching Man

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 19:08:19