在Python中读取csv文件时如何定义列标题

时间:2010-06-26 00:18:27

标签: python csv

我有一个逗号分隔值表,我想用Python阅读。我需要做的是首先告诉Python不要跳过第一行,因为它包含标题。然后我需要告诉它将数据读入列表而不是字符串,因为我需要从数据中构建一个数组,第一列是非整数(行标题)。

共有11列5行 这是表格的格式(除了没有行空格):

col1,col2,col3,col4,col5,col6,col7,col8,col9,col10,col11

w0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10        
w1  1, 2, 3, 4, 5, 6, 7, 8, 9, 10    
w2  1, 2, 3, 4, 5, 6, 7, 8, 9, 10   
w3  1, 2, 3, 4, 5, 6, 7, 8, 9, 10 

有办法做到这一点吗?非常感谢任何帮助!

1 个答案:

答案 0 :(得分:27)

您可以使用csv module进行此类操作。它将在每一行中读取表示不同字段的字符串列表。

你究竟想要如何使用它取决于你之后如何处理数据,但你可以考虑制作一个Reader对象(来自csv.reader()函数),调用{ {1}}一次获取第一行,即标题,然后迭代next()循环中的其余行。

for

如果你打算将字段放入dict中,你可以使用r = csv.reader(...) headers = r.next() for fields in r: # do stuff 代替(并且该类将自动从第一行获取字段名称,因此你可以构建它在循环中使用它。