如何将带有换行符的列表写入文件?

作者站长头像
站长
· 阅读数 15

如何将列表写入文件? writelines() 不能插入换行符

我需要这样做:

 f.writelines([f"{line}\n" for line in lines])
原文由 Josh Arenberg 发布,翻译遵循 CC BY-SA 4.0 许可协议
回复
1个回答
avatar
test
2024-07-20

使用循环:

 with open('your_file.txt', 'w') as f:
    for line in lines:
        f.write(f"{line}\n")

对于 Python <3.6:

 with open('your_file.txt', 'w') as f:
    for line in lines:
        f.write("%s\n" % line)

对于 Python 2,也可以使用:

 with open('your_file.txt', 'w') as f:
    for line in lines:
        print >> f, line

如果想要单个函数调用,请至少删除方括号 [] ,以便一次打印一个字符串(一个 genexp 而不是一个 listcomp) - 没有理由占用实现整个字符串列表所需的所有内存。

原文由 Alex Martelli 发布,翻译遵循 CC BY-SA 4.0 许可协议
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容