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

Python打印文本文件时\n未换行反而输出字符的问题排查

解决测验结果文件打印时\n不换行的问题

嘿,这问题我之前也碰到过!你现在看到的是Python把文件内容当成列表元素打印,直接显示了转义字符\n,而没有解析成实际的换行。这大概率是因为你用了readlines()这类方法读取文件,它会把每一行(包括末尾的换行符)作为列表的一个元素存储,直接打印列表就会出现这种情况。

下面给你几个简单的解决方案:

方案1:直接读取整个文件内容

用read()方法一次性读取整个文件,它会自动解析所有换行符,直接打印就能得到正常格式:

# 替换成你的文件路径
with open("quiz_results.txt", "r") as result_file:
    full_content = result_file.read()
print(full_content)

方案2:处理已读取的列表内容

如果你已经用readlines()拿到了列表(就是你输出的那个列表),可以用两种方式处理:

方式A:遍历列表逐个打印

遍历列表里的每一行,打印时注意避免重复换行(因为每个元素本身已经带\n了):

with open("quiz_results.txt", "r") as result_file:
    lines_list = result_file.readlines()
for line in lines_list:
    print(line, end="")  # end=""取消print默认的额外换行

方式B:用join拼接成字符串再打印

把列表里的所有元素拼接成一个完整的字符串,再打印就会自动解析换行:

with open("quiz_results.txt", "r") as result_file:
    lines_list = result_file.readlines()
print("".join(lines_list))

简单说下原理:直接打印列表时,Python会输出每个元素的原始字面形式(包括转义字符);而把元素拼接成字符串或者逐个打印时,Python会解析\n为实际的换行操作,这样就和文件里的格式一致啦!

内容的提问来源于stack exchange,提问作者Jamie Wilson

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 03:37:05