CSV(Comma Separated Values)是逗号分隔符文本格式,常用于Excel和数据库的导入和导出,Python标准库的CSV模块提供了读取和写入CSV格式文件的对象。
1.1 csv.reader对象和csv文件的读取
csv.reader(csvfile,dialect='excel',**fmtparams),主要用于文件的读取,返回一个reader对象用于在csv文件内容上进行行迭代。
参数csvfile是文件对象或者list对象;dialect 用于指定csv的格式模式不同程序输出的csv格式有细微差别;fmtparams是一系列参数列表,主要用于设置特定的格式,以覆盖dialect中的格式。
csv.reader对象是可迭代对象,包含以下属性:
-
csv.reader().dialect #返回其dialect
-
csv.reader().line_num #f返回读入的行数
示例1:使用reader对象读取csv文件scores.csv,文件内容如下:
学号,姓名,性别,班级,语文,数学,英语
100001,小雨,女,1班,72,85,87
100002,小雪,女,2班,67,87,77
100003,小宇,男,3班,88,78,78
100004,小天,男,1班,76,87,84
100005,小军,男,3班,79,86,83
#_*_coding=utf-8 import csv def readcsv(csvfilepath):#列表方式读取 with open(csvfilepath, 'r', newline='',encoding='utf-8') as csvfile: reader = csv.reader(csvfile)#创建csv.reader对象 for row in reader: # 读取出的内容是列表格式的 print(row) print(reader.line_num) if __name__=='__main__': readcsv(r'E:\2018-12-19\scores.csv') #输出 # ['学号', '姓名', '性别', '班级', '语文', '数学', '英语'] # ['100001', '小雨', '女', '1班', '72', '85', '87'] # ['100002', '小雪', '女', '2班', '67', '87', '77'] #....(略) # 6