我正在从包含以下数据的CSV文件(xyz.CSV)中读取数据:
col1,col2,col3,col4 name1,empId1,241682-27638-USD-CIGGNT ,1 name2,empId2,241682-27638-USD-OCGGINT ,1 name3,empId3,241942-37190-USD-GGDIV ,2 name4,empId4,241942-37190-USD-CHYOF ,1 name5,empId5,241942-37190-USD-EQPL ,1 name6,empId6,241942-37190-USD-INT ,1 name7,empId7,242066-15343-USD-CYJOF ,3 name8,empId8,242066-15343-USD-CYJOF ,3 name9,empId9,242066-15343-USD-CYJOF ,3 name10,empId10,241942-37190-USD-GGDIV ,2
当我使用循环对其进行迭代时,我可以按以下代码逐行打印数据,并且仅打印column1数据。
file=open( path +"xyz.CSV", "r") reader = csv.reader(file) for line in reader: t=line[0] print t
通过上面的代码,我只能得到第一列。
如果我尝试打印line [1]或line [2],则会出现以下错误。
file=open( path +"xyz.CSV", "r") reader = csv.reader(file) for line in reader: t=line[1],[2] print t t=line[1],line[2] IndexError: list index out of range
请建议打印列2或列3的数据。
这是我获得第二列和第三列的方法:
import csv path = 'c:\\temp\\' file=open( path +"xyz.CSV", "r") reader = csv.reader(file) for line in reader: t=line[1],line[2] print(t)
结果如下:
('col2', 'col3') ('empId1', '241682-27638-USD-CIGGNT ') ('empId2', '241682-27638-USD-OCGGINT ') ('empId3', '241942-37190-USD-GGDIV ') ('empId4', '241942-37190-USD-CHYOF ') ('empId5', '241942-37190-USD-EQPL ') ('empId6', '241942-37190-USD-INT ') ('empId7', '242066-15343-USD-CYJOF ') ('empId8', '242066-15343-USD-CYJOF ') ('empId9', '242066-15343-USD-CYJOF ') ('empId10', '241942-37190-USD-GGDIV ')