我试图用2或3列对excel数据进行排序(如果你愿意的话,可以使用嵌套排序)。 目前的情况是,我得到一个文本文件(有时超过1个)和日志条目,然后我必须转换成一个托管的Excel电子表格。在
我已经设法做到了,但现在我的经理希望我也能分别按“日期”和“时间”列进行排序。在
所以为了把它分解,我只是想知道我该怎么做。在
要求:
通过多个列对csv或excel电子表格进行排序,并将它们写入文档(最好是相同类型的)。在
代码:
目前我的代码是:
import csv, os
import operator
testcsv= open('test.csv', 'r')
csvSort = csv.reader(testcsv, delimiter=",")
sort = sorted(csvSort,key=operator.itemgetter(0,1))
for eachline in sort:
print eachline
这对“打印”和检查都很好。 但是我不能用这个把数据写回excel电子表格。在
如果我这样做了,它会变成一行而不是多行。 当我向文件写入行时,我使用的代码是:
^{pr2}$也许如果有人有更好的选择让我使用或添加一些能帮助我的东西,我会很感激的。在
正在使用的测试输入数据文件
05/02/2015,20:22:24,201534
07/02/2015,20:23:24,201534
05/02/2015,20:23:24,201534
06/02/2015,20:23:24,201534
05/02/2015,20:24:24,201534
13/02/2015,20:24:24,201534
13/02/2015,20:24:24,201534
12/02/2015,20:21:24,201534
01/02/2015,20:21:24,201534
21/02/2015,20:21:24,201534
21/02/2015,20:21:24,201534
13/02/2015,20:21:24,201534
13/02/2015,20:21:24,201534
13/02/2015,20:21:24,201534
13/02/2015,20:21:24,201534
13/02/2015,20:21:24,201534
13/02/2015,20:21:24,201534
13/02/2015,20:21:24,201534
13/02/2015,20:21:24,201534
05/02/2015,20:21:24,201534
05/02/2015,20:21:24,201534
05/02/2015,20:21:24,201534
05/02/2015,20:18:24,201534
05/02/2015,20:18:24,201534
05/02/2015,20:18:24,201534
05/02/2015,20:22:24,201534
您可以重用
csv.writer
来写回整个已排序的列表列表。它有一个名为writerows()
的函数。示例-请注意,您不需要将分隔符指定为
,
,默认分隔符是逗号。在当前,当您将
writelines
与eachline
列表一起使用时,它会同时写入列表的每个元素,但不会添加所需的换行字符。所以所有的数据看起来都在一行。您应该使用csv.writer
来写回csv/excel文件。在相关问题 更多 >
编程相关推荐