A---dumps----(json字符串)----loads---B;
obj---stringify---(json字符串)----parse---str;(前端之JS)
var obj1={name:"wc",age:18}; var str=JSON.stringify(obj1); console.log(str); var str1='{"name":"wc","age":18}'; var obj=JSON.parse(str1); console.log(obj);
序列化模块
Python中用于序列化的两个模块:
- json 跨平台跨语言的数据传输格式,用于【字符串】和 【python基本数据类型】 间进行转换
- pickle python内置的数据传输格式,多用于二进制形式,用于【python特有的类型】 和 【python基本数据类型】间进行转换
Json模块提供了四个功能:dumps、dump、loads、load
pickle模块提供了四个功能:dumps、dump、loads、load
#pickle.dumps将数据通过特殊的形式转换为只有python能识别的字符串import pickledata={'k1':123,'k2':'hello'}p_str=pickle.dumps(data)print(p_str) ------->b'\x80\x03}q\x00(X\x02\x00\x00\x00k2q\x01X\x05\x00\x00\x00helloq\x02X\x02\x00\x00\x00k1q\x03K{u.'s = pickle.loads(p_str)print(s) -------->{'k2': 'hello', 'k1': 123}#pickle.dump将数据通过特殊的形式转换为只有python认识的字符串,并写入文件with open('db','w') as fp: pickle.dump(data,fp)json实例#json.loads()#将字符串转换成python基本数据类型,注:里面一定要是双引号,外面是单引号import jsons='{"name":"tina","age":"18"}'l='[1,2,3,4]'r=json.loads(l)w=json.loads(s)print(r,type(r))print(w,type(w))############执行结果如下:###########[1, 2, 3, 4]{'age': '18', 'name': 'tina'} #json.dumps()将python的基本数据类型转换成字符串a={"name":"tina","age":"18"}b=json.dumps(a)print(b,type(b))#############执行结果如下:##########{"age": "18", "name": "tina"} #不带s的是对文件进行操作dic = {'k1':123,'k2':345}a=json.dump(dic,open('db','w'))print(a,type(a))#读内容#字符串转换成字典r=json.load(open('db','r'))print(r,type(r))#############执行结果如下:##########写入db文件中的内容即为dict{'k2': 345, 'k1': 123}