首先,要说的是,如果你从事Python开发、测试、运维,只要是你用Python来编写程序,那么读取Json一定是你必须学习的掌握的一门技术。在Python中读取Json是一件非常容易的事情,那究竟什么是JSON呢?
-
JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)
-
JSON 是轻量级的文本数据交换格式
-
JSON 独立于语言:JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON。
-
JSON 具有自我描述性,更易理解
有的朋友可能对XML更加熟悉,那么JSON为什么比 XML 更好?可以说XML 比 JSON 更难解析。JSON 可以直接使用现有的 JavaScript 对象解析。针对 AJAX 应用,JSON 比 XML 数据加载更快,而且更简单。
读取JSON文件
假设我们有一个名称为Name.json的文件如下:
{"name": "tom","age":12, "home": "Beijing"}
通过key来读取Json中对应的value:
import json
with open('Name.json', 'r', encoding='utf-8') as f:
obj = json.load(f)
print(type(obj)) # <class 'dict'>
print(obj["name"]) # tom
print(obj["age"]) # 12
print(obj["home"]) # Beijing
f.close()
写入JSON文件
现在,来创建一个类似JOSN的数据,并写入到Hobby.json文件中:
dic = {}
dic["name"] = "Peter"
dic["favorite"] = ['football', 'baskball']
with open('Hobby.json', 'w', encoding='utf-8') as f:
json.dump(dic, f)
f.close()
可以看到会生成一个Hobby.json
{"name": "Peter", "favorite": ["football", "baskball"]}
python类型转换为json
假设我们有一个字典类型的数据,现在将他转换为可以存储在Json文件中的数据类型:
dic = {"name": "Peter", "favorite": ["football", "baskball"]}
print(type(dic)) # <class 'dict'>
new = json.dumps(dic)
print(type(new)) # <class 'str'>
json转换为python类型
首先我们创建一个json类型的字符串,将其转换为python类型:
dic = {"name": "Peter", "favorite": ["football", "baskball"]}
new = json.dumps(dic) # 创建一个json类型字符串
print(type(new)) # <class 'str'>
json_data = json.loads(new)
print(type(json_data)) # <class 'dict'>
● 总结 ●
常用的json功能,总结如下:
json与python数据类型的对应关系如下:
最后:下方这份完整的【软件测试】视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取 【保证100%免费】