文章目录
- 前言
- 一、CSV简介
- 1.1 什么是CSV?
- 1.2 为什么要使用CSV?
- 1.3 使用Excel生成CSV文件
- 二、Python CSV常用方法
- 三、用Python来操作CSV文件
- 1.引入库
- 2.读入数据(使用csv.reader)
- 3.写入数据(使用csv.writer)
- 4. CSV自定义方言(dialect)
- 总结
前言
CSV是数据处理中经常会用到的一种文件格式。本文将对CSV进行简要的介绍,并使用Python来对CSV文件进行读写操作。
提示:以下是本篇文章正文内容,下面案例可供参考
一、CSV简介
1.1 什么是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) |
1.2 为什么要使用CSV?
纯文本文件格式有TXT,JSON等。只要使用TXT文件格式就能进行文件的读写,那么为什么还要使用CSV呢?
原因:CSV文件可以和Excel进行转换。当前很多公司的报表使用Excel来生成,因此将数据写入CSV文件能更方便的使用Excel来进行读取。
1.3 使用Excel生成CSV文件
在Excel中点击文件>另存为,将文件类型选择为CSV(逗号分隔)(*.csv)
二、Python CSV常用方法
方法 | 描述 |
csv.reader() | 返回一个遍历CSV文件各行的读取器对象 |
csv.writer() | 返回将数据写入 CSV 文件的写入器对象 |
csv.register_dialect() | 注册CSV方言 |
三、用Python来操作CSV文件
1.引入库
代码如下(示例):
import csv
2.读入数据(使用csv.reader)
代码如下(示例):
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)
3.写入数据(使用csv.writer)
import csv
array=[["姓名","年龄","性别"],["吴金红","30","男"],["姜峰","24","女"],["雷建国","60","男"]]
csvFile = open('filename.csv', 'w',newline='')
#如果不加入newline='',那么每写入一行数据,就会写入一行空白。可以去掉自行验证
with csvFile:
writer = csv.writer(csvFile)
#将array按行写入
writer.writerows(array)
4. CSV自定义方言(dialect)
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))
总结
以上就是今天要讲的内容,本文对csv做了简要的介绍,并用python实现了csv文件的读取和写入操作,如有不正确的地方,欢迎指正。