一、认识CSV
CSV:Comma-Separated Values 逗号分隔值
顾名思义,通常以逗号(也不一定是)分隔的,其文件以纯文本形式存储表格数据(数字和文本)。
泛指具有以下特征的任何文件:
- 纯文本,使用某个字符集,比如ASCII、Unicode、EBCDIC或GB2312;
- 由记录组成(典型的是每行一条记录);
- 每条记录被分隔符分隔为字段(典型分隔符有逗号、分号或制表符;有时分隔符可以包括可选的空格);
- 每条记录都有同样的字段序列。
其规则:
- 开头是不留空,以行为单位。
- 可含或不含列名,含列名则居文件第一行。
- 一行数据不跨行,无空行。
- 以半角逗号(即,)作分隔符,列为空也要表达其存在。
- 列内容如存在半角引号(即"),替换成半角双引号("")转义,即用半角引号(即"")将该字段值包含起来。
- 文件读写时引号,逗号操作规则互逆。
- 内码格式不限,可为 ASCII、Unicode 或者其他。
- 不支持数字
- 不支持特殊字符
CSV格式文件的优势:
- csv文件被许多种类的程序广泛支持
- 可以在文本编辑器中查看(包括IDLE文件编辑器)
- csv文件可以直接用Excel打开
- 同样的内容,csv文件比Excel文件小的得多
- csv格式适合保存海量数据。可以像txt一样以文本流的方式进行流式处理,不但能导出海量信息,而且流式处理占用内存极低,服务器对浏览器的响应也是非常迅速的
——
二、CSV模块之Reader对象
在Python中自带了CSV模块可以轻松容易地解析CSV文件。
通过创建Reader对象,我们可以实现从CSV文件读取数据操作。
import csv
exampleFile = open('example.csv') # 打开CSV文件
exampleReader = csv.reader(exampleFile) # 创建Reader对象
exampleData = list(exampleReader) # 创建数据的列表的列表
print(exampleData)
# 可以通过[row][col]来访问特定的行和列的值
print