我正在读取存储在dict中的csv n数据。。。colName:值。。。格式。。。 但是科尔的秩序被打乱了。。 我要和csv一样的顺序
代码:
def sort_csv():
data = list(csv.DictReader(open("Bl.csv")))
op = open("Bl_S.csv", "wb")
wr = csv.writer(op, quoting=csv.QUOTE_NONE)
sorted_data = sorted(data, key = lambda d:(d['ID'], d['Begin']))
headers = sorted_data[0].keys()
wr.writerow(headers)
for i in sorted_data:
wr.writerow(i.values())
op.close()
字典不排序,因此当您排序时:
^{pr2}$headers
的顺序基本上是随机的。另外,values()
的返回值也是随机的,因此即使您很幸运,并且当您使用以下方法编写行时,headers
的顺序是正确的:不同行中的元素不必具有相同的顺序。在
您必须分别从文件中读取标题。另外,在你的例子中使用
DictWriter
可能更好。例如:相关问题 更多 >
编程相关推荐