用Python编写一个列表到一个文件

这是将一个列表写入文件的最writelines() ,因为writelines()不会插入换行符?

file.writelines(["%sn" % item  for item in list])

似乎会有一个标准的方式...


编辑添加托马斯评论的信息

不要忘记先打开文件

thefile = open('test.txt', 'w')

我会使用一个循环:

for item in thelist:
  thefile.write("%sn" % item)

要么:

for item in thelist:
  print>>thefile, item

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


你打算怎么处理这个文件? 这个文件是否存在于人类或其他具有明确互操作性要求的程序中,或者您只是试图将列表序列化到磁盘以供以后由同一个python应用程序使用。 如果第二种情况是这样,你应该腌制清单。

import pickle

with open('outfile', 'wb') as fp:
    pickle.dump(itemlist, fp)

阅读它:

with open ('outfile', 'rb') as fp:
    itemlist = pickle.load(fp)

最好的方法是:

outfile.write("n".join(itemlist))
链接地址: http://www.djcxy.com/p/68799.html

上一篇: Writing a list to a file with Python

下一篇: When should I use setDT() instead of data.table() to create a data.table?