JSON(JavaScript Object Notation)是一个轻量级的数据交换格式,它是基于ECMAScript的一个子集。JSON采用完全独立于语言的文本格式,但也使用了类似C语言家族的习惯(包括C、C++、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言,易于阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。JSON在Python中分配由list和dict组成。json模板提供了4个功能:dumps、dump、loads和load。
- dumps:把数据类型转换为字符串。
- dump:把数据类型转换为字符串并存储在文件中。
- loads:把字符串转换为数据类型。
- load:把文件打开,并把字符串转换为数据类型。
1. 使用json.dumps()将Python中的字典转换为字符串
了解了Python中json库的基本用法,下面使用dumps将Python中的字典转换为字符串,相关示例代码如下:
1 import json 2 3 test_dict = {'bigberg':[7600,{1:[['iPhone',6300],['Bike',800],['shirt',300]]}]} 4 print(test_dict) 5 print(type(test_dict)) 6 json_str = json.dumps(test_dict) 7 print(json_str) 8 print(type(json_str))
运行后控制台输出:
图1
2.使用json.loads()将字符串转换为字典
继续刚才的例子,将字符串转换为字典的示例代码如下:
1 new_dist = json.loads(json_str) 2 print(new_dist) 3 print(type(new_dist))
运行后控制台输出:
{'bigberg': [7600, {'1': [['iPhone', 6300], ['Bike', 800], ['shirt', 300]]}]} <class 'dict'>
3.将数据写入Json文件
要将数据写入Json文件中,还需要使用open()方法,只是在写入前,需要使用 json.dump() 方法将数据处理后写入,示例代码如下。
1 import json 2 3 new_dist = {"name":"张三","age":20,"gender":"m"} 4 with open("record.json","w",encoding="utf-8") as file: 5 json.dump(new_dist,file) 6 print("加载文件完成……")