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

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

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

我需要这样做:

 f.writelines([f"{line}\n" for line in lines])

原文由 Josh Arenberg 发布,翻译遵循 CC BY-SA 4.0 许可协议


回答:

使用循环:

 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 许可协议


回答:

你打算用这个文件做什么?该文件是让人直接使用还是说让其他具有明确交互性要求的程序使用?

如果你只是想将一个列表序列化到磁盘以供同一个 python 应用程序稍后使用,你应该 pickleing 列表。

 import pickle

with open('outfile', 'wb') as fp:

pickle.dump(itemlist, fp)

回读:

 with open ('outfile', 'rb') as fp:

itemlist = pickle.load(fp)

原文由 SingleNegationElimination 发布,翻译遵循 CC BY-SA 4.0 许可协议

以上是 如何将带有换行符的列表写入文件? 的全部内容, 来源链接: utcz.com/p/938600.html

回到顶部