赞
踩
CSV是数据处理中经常会用到的一种文件格式。本文将对CSV进行简要的介绍,并使用Python来对CSV文件进行读写操作。
提示:以下是本篇文章正文内容,下面案例可供参考
CSV文件,即逗号分隔值文件(Comma Separated Values file)。它是一种纯文本文件,使用特定的结构来排列表格数据。
CSV文件通常使用逗号来分割每个特定数据值(也可用’ : : :’,’ ; ; ;'等),具体的文件结构如下:
列名 1 | 列名 2 | 列名 3 |
---|---|---|
数据值(1,1) | 数据值(1,2) | 数据值(1,3) |
数据值(2,1) | 数据值(2,2) | 数据值(2,3) |
数据值(3,1) | 数据值(3,2) | 数据值(3,3) |
纯文本文件格式有TXT,JSON等。只要使用TXT文件格式就能进行文件的读写,那么为什么还要使用CSV呢?
原因:CSV文件可以和Excel进行转换。当前很多公司的报表使用Excel来生成,因此将数据写入CSV文件能更方便的使用Excel来进行读取。
在Excel中点击文件>另存为,将文件类型选择为CSV(逗号分隔)(*.csv)
方法 | 描述 |
---|---|
csv.reader() | 返回一个遍历CSV文件各行的读取器对象 |
csv.writer() | 返回将数据写入 CSV 文件的写入器对象 |
csv.register_dialect() | 注册CSV方言 |
代码如下(示例):
import csv
代码如下(示例):
import csv
#open的第一个参数为文件名,第二个参数为打开的类型"r"为读,'w'为写,'a'为追加等等
csvFile = open("filename.csv","r")
reader = csv.reader(csvFile)
#将reader转化为list,方便进行遍历
listReader =list(reader)
#对reader进行按行遍历
for row in listReader:
print(row)
import csv
array=[["姓名","年龄","性别"],["吴金红","30","男"],["姜峰","24","女"],["雷建国","60","男"]]
csvFile = open('filename.csv', 'w',newline='')
#如果不加入newline='',那么每写入一行数据,就会写入一行空白。可以去掉自行验证
with csvFile:
writer = csv.writer(csvFile)
#将array按行写入
writer.writerows(array)
CSV文件中的格式有很多:逗号分隔 、冒号分隔等等。但是当实际文件的分隔符与内置的分隔符不同时,处理起来就会存在一定的问题。
而dialect方法可以自己规定格式来读取或写入。
import csv
#注册一个名为myDialect的方言,分隔符为'*'
csv.register_dialect("myDialect", delimiter="*")
csvFile = open('filename.csv', 'w',newline='')
with csvFile:
# dialect="myDialect"用来指定方言
writer = csv.writer(csvFile, dialect="myDialect")
writer.writerow(("姓名", "吴金红"))
writer.writerow(("年龄", 24))
writer.writerow(("性别", "男"))
writer.writerow(("身高", 175))
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。