用python-2.7将多个列表写入文本文件
最初,这些列表嵌套在另一个列表中。列表中的每个元素都是一系列字符串用python-2.7将多个列表写入文本文件,python,text,writefile,Python,Text,Writefile,最初,这些列表嵌套在另一个列表中。列表中的每个元素都是一系列字符串 ['aaa664847', 'Completed', 'location', 'mode', '2014-xx-ddT20:00:00.000'] 我在列表中加入字符串,然后附加到结果中 results.append[orginal] print results ['aaa664847, Completed, location, mode, 2014-xx-ddT20:00:00.000'] ['aaa665487, C
['aaa664847', 'Completed', 'location', 'mode', '2014-xx-ddT20:00:00.000']
我在列表中加入字符串,然后附加到结果中
results.append[orginal]
print results
['aaa664847, Completed, location, mode, 2014-xx-ddT20:00:00.000']
['aaa665487, Completed, location, mode, 2014-xx-ddT19:00:00.000']
['aaa661965, Completed, location, mode, 2014-xx-ddT18:00:00.000']
['aaa669696, Completed, location, mode, 2014-xx-ddT17:00:00.000']
['aaa665376, Completed, location, mode, 2014-xx-ddT16:00:00.000']
我希望将每个列表写入一个文本文件。列表的数量可能会有所不同
我当前的代码:
fullpath = ('O:/Location/complete.txt')
outfile = open(fullpath, 'w')
outfile.writelines(results)
仅返回文本文件中的第一个列表:
aaa664847, Completed, location, mode, 2014-xx-ddT20:00:00.000
我希望文本文件包含所有结果如果您可以将所有这些字符串收集到一个大列表中,您可以循环使用它们 我不确定代码的
结果来自何处,但如果您可以将所有这些字符串放在一个大列表中(可能称为主列表),那么您可以执行以下操作:
fullpath = ('O:/Location/complete.txt')
outfile = open(fullpath, 'w')
for item in masterList:
outfile.writelines(item)
如果您的列表是嵌套列表,则可以使用循环写入线,如下所示:
fullpath = ('./data.txt')
outfile = open(fullpath, 'w')
results = [['aaa664847, Completed, location, mode, 2014-xx-ddT20:00:00.000'],
['aaa665487, Completed, location, mode, 2014-xx-ddT19:00:00.000'],
['aaa661965, Completed, location, mode, 2014-xx-ddT18:00:00.000'],
['aaa669696, Completed, location, mode, 2014-xx-ddT17:00:00.000'],
['aaa665376, Completed, location, mode, 2014-xx-ddT16:00:00.000']]
for result in results:
outfile.writelines(result)
outfile.write('\n')
outfile.close()
此外,请记住关闭文件。假设结果
是一个列表列表:
from itertools import chain
outfile = open(fullpath, 'w')
outfile.writelines(chain(*results))
将列表合并为单个列表。
但不会写新词。为此,您可以这样做:
outfile.write("\n".join(chain(*results))
或者,简单地说(假设结果中的所有列表只有一个字符串):
什么是“结果”?i、 e.如果您输入:type(结果),您会得到什么?看起来“results”是一个包含单个字符串的列表,您已经打印了4个不同的结果…@zoosuck正确地将“\n”添加到单独的行中,并在完成后关闭文件。
outfile.write("\n".join(i[0] for i in results)