我正在尝试使用unicodecsv
库将CSV文件读入python 3。代码如下:
with open('filename.csv', 'rb') as f:
reader = unicodecsv.DictReader(f)
Student_Data = list(reader)
但是当我从Student_Data
输出任何元素时,不会保留CSV文件中列的顺序。输出包含列的任何随机顺序。代码有什么问题吗?我该如何解决这个问题?
答案 0 :(得分:1)
如csv.DictReader documentation中所述,DictReader对象的行为类似于dict
- 所以它没有被排序。
您可以通过以下方式获取字段名称列表:
reader.fieldnames
但是如果您只想按原始顺序获取字段值列表,则可以使用普通读者:
with open('filename.csv', 'rb') as f:
reader = unicodecsv.reader(f)
for row in reader:
Student_Data = row