【发布时间】:2017-03-13 00:15:56
【问题描述】:
使用 Python27 从 Excel 16 csv 文件中读取 csv 文件: 导入 csv 使用 open("C:\Users\RJ\FG\Line\Line List.csv") 作为 csv_input: 阅读器 = csv.DictReader(csv_input) 对于阅读器中的行: 打印(行)
生成所有正确的数据,但 Excel 文件中的第一列是“RoutingFrom”,但这里是最后一列。
{'RoutingTo': 'AMINE DRAIN', 'Item': '1', 'LineSectTag': 'AD-12-1-011-0', 'LDTDocNo': 'M6D-1P12-00009', ' RoutingFrom': '1AM-12010-0'}
当我使用文本编辑器打开 csv 文件时: 项目、RoutingFrom、RoutingTo、LDTDocNo、LineSectTag 它是第二列。
测试编辑器视图是文件的原始顺序。我将使用它在 Networkx 中添加边,因此我对电子表格中的列重新排序,以便前两列的“从”和“到”。 Excel 将它们显示为前两列,Pyhton 将它们读取为第一列和最后一列,文本编辑器将它们显示为第二列和第三列。
然后,我将重新排列的(从、到、项目、...)csv 文件作为文本复制到一个新的电子表格中,这是上述所有内容的来源。
关于如何获得一致有序的数据集有什么建议吗?
顺便说一句,我正在处理实际数据的一小部分,它是 10 倍宽和 50 倍长。
感谢所有的意见, 谢谢 雷
【问题讨论】:
-
如果使用字典,则不会保留列的顺序,因为字典中键的顺序不是有序的。见stackoverflow.com/a/1885353。