第 14章处理 CSV 文件和 JSON 数据

在第 13 章中,你学习了如何从 PDF 和 Word 文档中提取文本。这些文件是二进制格式,需要特殊的 Python 模块来访问它们的数据。CSV 和JSON 
文件则不同,它们是纯文本文件。可以用文本编辑器察看它们,诸如 IDLE 的文件编辑器。但 Python也有专门的 csv 和 json 模块,每个模块都提供了一些函数,帮助你处理这些文件格式。
CSV 表示“Comma-Separated  Values(逗号分隔的值)”,CSV
文件是简化的电子表格,保存为纯文本文件。Python 的csv 模块让解析CSV 文件变得容易。
JSON(发音为“JAY-sawn”或“Jason”,但如何发音并不重要。因为无论如何发音,都会有人说你发音错误)是一种格式,它以 JavaScript 源代码的形式,将信息保存在纯文本文件中。
JSON 是JavaScript  Object  Notation 的缩写不需要知道JavaScript 编程语言,就可以使用JSON 文件,但了解 JSON 格式是有用的,因为它用于许多 Web 
应用程序中。
csv 模块
CSV 文件中的每行代表电子表格中的一行,逗号分割了该行中的单元格。例如,
来自 http://nostarch.com/automatestuff/的电子表格 example.xlsx,在一个 CSV 文件中,看起来像这样:
4/5/2015  13:34,Apples,73
4/5/2015  3:41,Cherries,85
4/6/2015  12:46,Pears,14
4/8/2015  8:59,Oranges,52
4/10/2015  2:07,Apples,152
4/10/2015  18:10,Bananas,23 4/10/2015  2:40,Strawberries,98
我将使用这个文件作为本章的交互式环境的例子。可以从 http://nostarch.com/ automatestuff/下载 example.csv,或在文本编辑器中输入文本,并保存为 
example.csv。
CSV 文件是简单的,缺少 Excel 电子表格的许多功能。例如,CSV 文件中:
•    值没有类型,所有东西都是字符串;
•    没有字体大小或颜色的设置;
•    没有多个工作表;
•    不能指定单元格的宽度和高度;
•    不能合并单元格;
•    不能嵌入图像或图表。
CSV 的文件的优势是简单。CSV 文件被许多种类的程序广泛地支持,可以在文本编辑器中查看(包括 IDLE  的文件编辑器),它是表示电子表格数据的直接方式。 CSV 
格式和它声称的完全一致:它就是一个文本文件,具有逗号分隔的值。
因为 CSV  文件就是文本文件,所以你可能会尝试将它们读入一个字符串,然后用第 8 章中学到的技术处理这个字符串。例如,因为 CSV 文件中的每个单元格有逗号分割,也许你可以只是对每行文本调用 
split()方法,来取得这些值。但并非 CSV 文件中的每个逗号,都表示两个单元格之间的分界。CSV 
文件也有自己的转义字符,允许逗号和其他字符作为值的一部分。split()方法不能处理这些转义字符。因为这些潜在的缺陷,所以总是应该使用 csv 模块来读写 CSV 文件。

你可能感兴趣的:(json,python,开发语言)