json库学习
作者:互联网
在python里面,使用序列化和反序列化使用到的标准库是json
序列化:把Python对象(字典,列表,元组)转为字符串的过程(把第三方的内容写到文件中 dump())
反序列化:把字符串转为Python对象(字典,列表,元组)的过程(从文件中读取数据 load())
用途:主要用于数据分析和接口测试
依据不同的数据类型(list,tuple,dict)来进行序列化和反序列化的操作
1,列表的序列化与反序列化
2,元组的序列化与反序列化
3,字典的序列化与反序列化
4,针对文件的序列化与反序列化
#列表的序列化与反序列化 lists=[x for x in range(6)] list_str=json.dumps(lists) print(list_str,type(list_str)) str_list=json.loads(list_str) print(str_list,type(str_list)) 结果: [0, 1, 2, 3, 4, 5] <class 'str'> [0, 1, 2, 3, 4, 5] <class 'list'>
#元组的序列化与反序列化 tuple1=("go","java") tuple_str=json.dumps(tuple1) print(tuple_str,type(tuple_str)) str_tuple=json.loads(tuple_str) print(str_tuple,type(str_tuple)) 列表: ["go", "java"] <class 'str'> ['go', 'java'] <class 'list'>
#字典的序列化与反序列化 dict1={"name":"无涯","age":18,"city":"西安"} dict_str=json.dumps(dict1,indent=True,ensure_ascii=False) print(dict_str,'\n',type(dict_str)) str_dict=json.loads(dict_str) print(str_dict,type(str_dict))
#注意:字典的序列化不支持中文,需要使用CTRL+鼠标左键找到 ensure_ascii=False 修改为False即可显示 结果: { "name": "无涯", "age": 18, "city": "西安" } <class 'str'>
#文件的序列化与反序列化 dict1={"name":"无涯","age":18,"city":"西安"} json.dump(dict1,open('json.txt','w')) data=json.load(open('json.txt','r')) print(data,type(data)) 结果: {'name': '无涯', 'age': 18, 'city': '西安'} <class 'dict'>
标签:tuple,list,学习,json,dict,str,序列化 来源: https://www.cnblogs.com/wrwangrong/p/16397922.html