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

Python使用file.write向文件写入内容时如何添加换行符?

核心问题说明

你现有代码存在两处错误导致无法写入换行:

  • 语法错误:Python 中拼接字符串需要使用加号+,你代码里用了分号;属于语法错误,运行时会直接报错
  • 换行符格式错误:Python 中的换行转义字符是\n,不是普通字符n

修复方案

直接把代码中写入的行替换为以下写法即可:

file.write(data + "\n")

如果使用 Python 3.6 及以上版本,也可以用 f-string 写法更易读:

file.write(f"{data}\n")

file.write 本身是纯原始内容写入,不会像print方法一样自动追加换行,只要把换行符拼接到要写入的字符串末尾即可实现换行写入。

额外优化建议

还有几个可以优化的点,避免后续出现其他问题:

  • 操作文件优先使用with上下文管理器,会自动完成文件关闭操作,不需要手动写file.close(),就算中途代码运行报错也不会残留未关闭的文件句柄
  • 打开文件时建议显式指定编码为utf-8,避免不同系统默认编码不一致导致写入乱码
  • 你现有代码中fn变量没有提前赋值,运行时会触发NameError,需要提前指定要写入的文件路径

优化后的完整代码示例:

import itertools

fn = "test.txt" # 替换为你实际要写入的文件路径
lines = int(input('Choose how many lines: '))
with open(fn, "w", encoding="utf-8") as file:
    for _ in itertools.repeat(None, lines):
        data = input()
        file.write(f"{data}\n")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 22:27:07