前言
以易于机器理解的方式来存储数据的文件格式,通常被称作机器可读的 (machine readable)。常见的机器可读格式包括:
逗号分隔值(Comma-Separated Values,CSV)
JavaScript 对象符号(JavaScript Object Notation,JSON)
可扩展标记语言(eXtensible Markup Language,XML)
在口语和书面语中,提到这些数据格式时通常使用它们的短名字(如 CSV)。 我们将使用这些缩写 。
一、CSV数据
CSV 文件(简称为 CSV)是指将数据列用逗号分隔的文件。文件的扩展名是 .csv。
另一种数据类型,叫作制表符分隔值(tab-separated values,TSV)数据,有时也与 CSV归为一类。TSV 与 CSV 唯一的不同之处在于,数据列之间的分隔符是制表符(tab),而不是逗号。文件的扩展名通常是 .tsv,但有时也用 .csv 作为扩展名。从本质上来看,.tsv 文件与 .csv 文件在Python 中的作用是相同的。
我们采用的数据源是从世界卫生组织(www.who.int/zh/home)中下载…
打开世卫组织官网后,点击“健康主题”,“数据和统计” 就能找到很多数据。
这里下载了关于婴幼儿护理的统计数据,并重命名为 data.csv。
csv 文件可以直接用 Excel 打开直观看到,我们用 Excel 打开如下图:
接下来就要用 Python 来简单的处理这些数据。
以列表的形式读取csv数据
编写一个读取 csv 文件的程序:
import csv
csvfile = open('./data.csv', 'r')
reader = csv.reader(csvfile)
for row in reader:
print(row)
import csv 将导入 Python 自带的 csv 模块。csvfile = open(’./data.csv’, ‘r’) 以只读的形式打开数据文件并存储到变量 csvfile 中。然后调用 csv 的 reader() 方法将输出保存在 reader 变量中,再用 for 循环将数据输出。
运行程序,控制台输出:
可以看到跟 Excel 打开的内容一致。
以字典的形式读取csv数据
改一下代码,以字典的形式读取 csv
import csv
csvfile = open('./data.csv', 'r')
reader = csv.DictReader(csvfile)
for row in reader:
print(row)
控制台输出:
二、JSON数据
同样在世卫组织官网下载数据源,重命名为 data.json。用格式化工具打开 json 文件如下:
编写程序对 json 进行解析
import json
# 将 json 文件读取成字符串
json_data = open('./data.json').read()
# 对json数据解码
data = json.loads(json_data)
# data 的类型是 字典dict
print(type(data))
# 直接打印 data
print(data)
# 遍历字典
for k, v in data.items(