Python 导出csv及读取csv文件
发布时间:2018-11-06 10:16:18作者:wangjian浏览量:2790点赞量:0
一:Python 导出csv
Python对于csv文件的操作使用到的组件是Python自带的csv组件,这里说明在原生的Python文件中使用Python导出csv文件时,导出的csv文件是只能在此电脑上(及你的电脑就是一个服务器),Python原生的导出csv文件大多用于在本地抓取数据时,将数据导出
1:导出csv 数据结构为字典型
import csv #open函数第一个参数是导出的文件名,第二个参数是w(表示写模式),在Python2中为wb(w表示写模式 b表示文件类型),在Python3中如果使用wb的话回报(TypeError: a bytes-like object is required, not 'str')错误第三个参数设置文件编码格式是utf-8,第四个参数是去除每行数据中间的空格,如果不加上newline='',导出文件成功,但是导出的文件每行之间会有一行空格 with open('csv.csv', "w", encoding='utf8', newline='') as outFileCsv: #设置csv表头 fileheader = ['姓名', '年龄'] outDictWriter = csv.DictWriter(outFileCsv, fileheader) outDictWriter.writeheader() #设置csv数据,这里的数据格式是字典型 result = [{'姓名': '张三', '年龄': 12}, {'姓名': '李四', '年龄': 14}] outDictWriter.writerows(result) outFileCsv.close()
2:导出csv 数据结构为列表型
import csv #open函数第一个参数是导出的文件名,第二个参数是w(表示写模式),在Python2中为wb(w表示写模式 b表示文件类型),在Python3中如果使用wb的话回报(TypeError: a bytes-like object is required, not 'str')错误第三个参数设置文件编码格式是utf-8,第四个参数是去除每行数据中间的空格,如果不加上newline='',导出文件成功,但是导出的文件每行之间会有一行空格 with open('ceshi.csv', 'w', encoding='utf8', newline='') as csvfile: writer = csv.writer(csvfile) #设置表头 result = ['姓名', '年龄'] writer.writerow(result) #将CsvData中的数据循环写入到csv文件中 CsvData = [['张三','22'],['李四','44']] for item in CsvData: writer.writerow(item)
二:读取csv文件
import csv # 读取csv文件内容 ##open函数第一个参数是导出的文件名,第二个参数是r(表示读模式),在Python2中为rb(r表示读模式 b表示文件类型),在Python3中如果使用 #wb的话回报(TypeError: a bytes-like object is required, not 'str')错误第三个参数设置文件编码格式是utf-8 with open("csv.csv","r",encoding="utf-8") as csvfile: #读取csv文件,返回的是迭代类型 read = csv.reader(csvfile) for i in read: print(i)