分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

模块讲解----json模块(跨平台的序列化与反序列化)

发布时间:2023-09-06 01:31责任编辑:蔡小小关键词:jsjson

一、json的特点

1、只能处理简单的可序列化的对象;(字典,列表,元祖)
2、json支持不同语言之间的数据交互;(python  -  go,python - java)
 
二、使用场景
1、玩游戏的时候存档和读取记录。
2、虚拟机挂起、保存或者恢复、读档的时候。
 
 
三、语法:
1、简单的数据类型:
 1 1、在内存中进行转换: 2 import json 3 #py基本数据类型转换字符串: 4 r = json.dumps([11,22,33]) 5 #li = ‘["alex","eric"]‘ 6 li = "[‘alex‘,‘eric‘]" 7 re = json.loads(li)   #反序列化的时候,一定要使用双引号""。 8 print(re,type(re)) 9 10 11 2、在文件中转换:(在dumps和loads基础上增加了个写读文件)12 import json13 14 文件格式的序列化:15 li = [11,22,33]16 json.dump(li,open(‘db‘,‘w‘))17 18 19 文件格式的反序列化:20 li = json.load(open(‘db‘,‘r‘))21 print(li,type(li))

2、复杂的数据类型:

序列化:

 1 #!/usr/bin/env python 2 # -*- coding:utf8 -*- 3 # Author:Dong Ye 4 ?5 import json 6 ?7 ?8 test = r‘test.txt‘ 9 10 info  = {11     ‘name‘ : ‘alex‘,12     ‘age‘ : 3213 14 }15 16 with open(test,‘w‘,encoding=‘utf-8‘) as f:17     f.write( json.dumps(info) )

反序列化:

 1 #!/usr/bin/env python 2 # -*- coding:utf8 -*- 3 # Author:Dong Ye 4 ?5 import  json 6 ?7 test = r‘test.txt‘ 8 ?9 with open(test,‘r‘,encoding=‘utf-8‘) as f:10     data = json.loads( f.read() )11     print(data)12     print(data[‘name‘])13     print(data[‘age‘])

使用场景

调用其他平台的接口时,一般都会返回一个字符串,eg:“字典,列表,url路径等”。
1 import requests2 import json3 4 response = requests.get("http://http://wthrcdn.etouch.cn/weather_mini?ciyp=北京")5 response.encoding = ‘utf-8‘6 7 dic = json.loads(requests.text)8 print(response,type(response))

模块讲解----json模块(跨平台的序列化与反序列化)

原文地址:http://www.cnblogs.com/abobo/p/8075251.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved