导入数据
在导入数据方面,我们将介绍CSV、JSON、和XML数据的导入以及相应方法的使用。
CSV数据
csv文件也叫逗号分隔符文件,在实际的数据分析和处理中,是人们经常用到的文件格式之一。
打开csv文件,并且读取:
import csv
csvfile = open('data/data-text.csv', 'rb')
reader = csv.reader(csvfile)
for row in reader:
print(row)
这里有两个方法需要我们去留意:
- 通过open(文件路径,读取方式),我们可以打开一个data-text.csv文件,并且以‘rb’的方式去读取。‘rb’指的是我们以只读方式和二进制方式打开文件,关于另外一种常用模式‘wb’指的是我们以二进制的方式写入。
- 通过CSV.reader(csvfile),我们让打开的文件当成CSV文件去读取。
字典的方式读取:
reader = csv. DictReader(csvfile)
import csv
csvfile = open('data-text.csv', 'rb')
reader = csv.DictReader(csvfile)
for row in reader:
print(row)
保存文件并重新运行,每一个数据记录变成一个字典。字典的键来自于 CSV 文件的第一 行。后面所有行都是字典的值。
JSON数据
JSON 数据是数据传输最常用的格式之一。人们喜欢这一格式,是因为它结构清晰、易于 阅读且方便解析。网站在向页面的 JavaScript 传输数据时,JSON 也是最常用的数据格式之 一。许多网站都提供了支持 JSON 的 API。
值得注意的是,如果文件的扩展名是 .json,那里面包含的可能是 JSON 数据。如果文件扩展 名是 .js,那可能是 JavaScript 文件,但在少数情况下也可能是命名不规范的 JSON 文件。
import json
json_data = open('data-text.json').read()
data = json.loads(json_data)
for item in data:
print(item)
- 利用Python内置函数open()打开文件,用read()方法读取文件,并将其保存在变量json_data中
- json.loads()方法将文件载入Python
值得注意的是:Python json 库的 loads 函数接收字符串作为参数,不接收文件作为参数。Python csv 库的 reader 函数接收打开的文件作为参数。
XML数据
XML 是一种标记语言,也就是说,它具有包含格式化数据的文档结构。 XML 文档本质上只是格式特殊的数据文件。
#coding=utf-8
import xml.dom.minidom
#打开xml文档
dom = xml.dom.minidom.parse('abc.xml')
#得到文档元素对象
root = dom.documentElement
print(root.nodeName)
print(root.nodeValue)
print(root.nodeType)
print(root.ELEMENT_NODE)
mxl.dom.minidom 模块被用来处理xml文件,所以要先引入。
xml.dom.minidom.parse() 用于打开一个xml文件,并将这个文件对象dom变量。
documentElement 用于得到dom对象的文档元素,并把获得的对象给root
每一个结点都有它的nodeName,nodeValue,nodeType属性。
nodeName为结点名字。
nodeValue是结点的值,只对文本结点有效。
nodeType是结点的类型。catalog是ELEMENT_NODE类型