json与python中字典的互相转化
json的界说JSON (JavaScript Object Notation) ,是一种轻量级的数据交换格式。它的使用范围很广,并成为 ECMA 标准,可以被使用在多种编程语言中,用于前后端之间的数据传输、存储和交换数据。可以说是“用更少的编码,有更快的处理速度”,所以深受广大程序员的喜好。
JSON 格式的数据是由键值对组成的,其中键值对之间使用逗号分隔。在 JSON 中,键和值都必须使用双引号引起来。
一段完整的json:
{
"name": "Simon",
"age": 2,
"isMale": true,
"hobbies": ["reading", "learning", "traveling"],
"address": {
"city": "Guangzhou",
"postCode": "510000"
},
"email": null
}
json与python中字典互相转化的语法
python与json数据范例的对应关系:
https://i-blog.csdnimg.cn/direct/0fccea438f1a4bf5b4663163a94df32e.png
1. python字典→json
语法如下:
json.dump(obj, fp, *, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw)
json.dumps(obj, *, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw)
import json
#python字典转化为json并保存为json文件格式
data_python={'name': '彼得潘', 'age': None, 'is_employee': True, 'addresses': [{'type': 'home', 'city': 'New York', 'country': 'USA'}, {'type': 'work', 'city': 'San Francisco', 'country': 'USA'}]}
data_json=json.dump(data_python,open('json_data.json','w'),ensure_ascii=False,indent=4) #中文默认是转化为ascii,所以需指定false
print(data_json,type(data_json),sep='\n')
#python字典转化为json
data_python={'name': '彼得潘', 'age': None, 'is_employee': True, 'addresses': [{'type': 'home', 'city': 'New York', 'country': 'USA'}, {'type': 'work', 'city': 'San Francisco', 'country': 'USA'}]}
data_json=json.dumps(data_python,ensure_ascii=False) #中文默认是转化为ascii,所以需指定false
print(data_json,type(data_json),sep='\n')
2. json→python字典
语法如下:
json.load(fp, *, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw)
json.loads(s, *, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw)
import json
#json转化为python字典
data_json='''{
"name": "彼得潘",
"age": null,
"is_employee": true,
"addresses": [
{
"type": "home",
"city": "New York",
"country": "USA"
},
{
"type": "work",
"city": "San Francisco",
"country": "USA"
}
]
}'''
data_python=json.loads(data_json)
print(data_python,type(data_python),sep='\n')
#读取json文件并将json转化为python字典
data_python=json.load(open('json_data.json'))
print(data_python,type(data_python),sep='\n')
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]