[英]Writing from a large list to a text file in Python
当我尝试从包含648470个字符串值的普通列表写入文本文件时,会发生一些奇怪的事情。
textFile = open('bins.txt', 'w')
for item in bigList:
print item # This prints fine
textFile.write(item)
textFile.close()
文本文件的大小迅速增长,并充满了各种符号,而不是预期的符号...即使我只写了bigList内容的一小部分,文本文件也已损坏。 如果我使用更小的列表来做完全相同的事情,那没有问题。 列表太大会导致此问题吗? print(bigList[:10])
是
['167', '14444', '118', '22110', '118', '8134', '82', '8949', '7875', '171']
它对我来说绝对很好。
在您的代码中,您忘记了关闭文件,而且,由于您以追加模式打开了文件,我的猜测是文件中存在一些垃圾,并且您忘记了删除。
另外,请记住,以这种方式写入不会以任何方式分隔数字。
由于某些列表对象不是字符串,因此文件写入时可能会出现问题。 尝试:
textFile = open('bins.txt', 'w')
for item in bigList:
print item # This prints fine
textFile.write(str(item))
textFile.close()
但是,我看不到您的列表,因此无法确定这是否是实际问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.