Python使用内置json模块解析json格式数据的方法


Posted in Python onJuly 20, 2017

本文实例讲述了Python使用内置json模块解析json格式数据的方法。分享给大家供大家参考,具体如下:

Python中解析json字符串非常简单,直接用内置的json模块就可以,不需要安装额外的模块。

一、json字符串转为python值

json字符串:

{"userAccount":"54321","date":"2016-12-06 10:26:17","ClickTime": 1480991177,"jsonInfo":{"lon":121.5612,"lat":31.1832,"isGps":1,"netType":"WIFI","addr":"浦东新区长江南路1099弄56号"}}

格式化一下:

{
  "userAccount": "54321",
  "date": "2016-12-06 10:26:17",
  "ClickTime": 1480991177,
  "jsonInfo": {
    "lon": 121.5612,
    "lat": 31.1832,
    "isGps": 1,
    "netType": "WIFI",
    "addr": "浦东新区长江南路1099弄56号"
  }
}
# -*- coding:gbk -*-
import json
sJOSN = '{"userAccount":"54321","date":"2016-12-06 10:26:17","ClickTime": 1480991177,"jsonInfo":{"lon":121.5612,"lat":31.1832,"isGps":1,"netType":"WIFI","addr":"浦东新区长江南路1099弄56号"}}'
sValue = json.loads(sJOSN)
print(sValue)

输出:

============= RESTART: C:\Users\Administrator\Desktop\Python.py =============
{'jsonInfo': {'lat': 31.1832, 'isGps': 1, 'netType': 'WIFI', 'addr': '浦东新区长江南路1099弄56号', 'lon': 121.5612}, 'ClickTime': 1480991177, 'userAccount': '54321', 'date': '2016-12-06 10:26:17'}
>>>

对比一下原始字符串和输出的,发现前后顺序变了,因为在转化为python的字典数据的过程中,顺序会变化。

另外,json中的双引号都改成了单引号。

二、python值转为json字符串

# -*- coding:gbk -*-
import json
sDict={'jsonInfo': {'netType': 'WIFI', 'lat': 31.1832, 'addr': '浦东新区长江南路1099弄56号', 'isGps': 1, 'lon': 121.5612}, 'userAccount': '54321', 'ClickTime': 1480991177, 'date': '2016-12-06 10:26:17'}
sValue = json.dumps(sDict)
print(sValue)

输出:

 Python使用内置json模块解析json格式数据的方法

又从字典数据变为了json字符串。

三、解析json中的数据

# -*- coding:gbk -*-
import json
sJOSN = '{"userAccount":"54321","date":"2016-12-06 10:26:17","ClickTime": 1480991177,"jsonInfo":{"lon":121.5612,"lat":31.1832,"isGps":1,"netType":"WIFI","addr":"浦东新区长江南路1099弄56号"}}'
sValue = json.loads(sJOSN)
for k in sValue.keys():
  if str(type(sValue[k]))!="<class 'dict'>":
    print(k+':'+ str(sValue[k]))
  else:
    print(str(k)+':')
    for k1 in sValue[k].keys():
      print(' '*3 + k1 +':'+str(sValue[k][k1]))

输出:

========= RESTART: C:\Users\Administrator\Desktop\Python json转为字典.py =========
userAccount:54321
date:2016-12-06 10:26:17
jsonInfo:
  netType:WIFI
  addr:浦东新区长江南路1099弄56号
  lon:121.5612
  lat:31.1832
  isGps:1
ClickTime:1480991177
Python 相关文章推荐
Python中删除文件的程序代码
Mar 13 Python
Python编程语言的35个与众不同之处(语言特征和使用技巧)
Jul 07 Python
Python开发的HTTP库requests详解
Aug 29 Python
Python基于mysql实现学生管理系统
Feb 21 Python
Python 监测文件是否更新的方法
Jun 10 Python
python实现图片九宫格分割
Mar 07 Python
Python使用APScheduler实现定时任务过程解析
Sep 11 Python
pd.DataFrame统计各列数值多少的实例
Dec 05 Python
Python调用Windows API函数编写录音机和音乐播放器功能
Jan 05 Python
Python 在局部变量域中执行代码
Aug 07 Python
python爬虫看看虎牙女主播中谁最“顶”步骤详解
Dec 01 Python
python爬取股票最新数据并用excel绘制树状图的示例
Mar 01 Python
Python轻量级ORM框架Peewee访问sqlite数据库的方法详解
Jul 20 #Python
Python函数式编程
Jul 20 #Python
python 换位密码算法的实例详解
Jul 19 #Python
python实现rsa加密实例详解
Jul 19 #Python
Python中标准库OS的常用方法总结大全
Jul 19 #Python
spyder常用快捷键(分享)
Jul 19 #Python
JPype实现在python中调用JAVA的实例
Jul 19 #Python
You might like
php实现批量下载百度云盘文件例子分享
2014/04/10 PHP
PHP中常见的缓存技术实例分析
2015/09/23 PHP
PHP中的数组处理函数实例总结
2016/01/09 PHP
PHP 中 var_export、print_r、var_dump 调试中的区别
2018/06/19 PHP
JQuery 小练习(实例代码)
2009/08/07 Javascript
js获取height和width的方法说明
2013/01/06 Javascript
javascript右下角弹层及自动隐藏(自己编写)
2013/11/20 Javascript
Iframe 自动适应页面的高度示例代码
2014/02/26 Javascript
实例分析js和C#中使用正则表达式匹配a标签
2014/11/26 Javascript
angular和BootStrap3实现购物车功能
2017/01/25 Javascript
详解Angular路由 ng-route和ui-router的区别
2017/05/22 Javascript
详解vue axios中文文档
2017/09/12 Javascript
关于element-ui的隐藏组件el-scrollbar的使用
2019/05/29 Javascript
深入理解JS异步编程-Promise
2019/06/03 Javascript
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
2019/07/10 Javascript
jQuery表单选择器用法详解
2019/08/22 jQuery
[03:58]2014DOTA2国际邀请赛 龙宝赛后解密DK获胜之道
2014/07/14 DOTA
[00:12]2018DOTA2亚洲邀请赛 sylar表现SOLO技艺
2018/04/06 DOTA
[45:10]NB vs Liquid Supermajor小组赛 A组胜者组决赛 BO3 第二场 6.2
2018/06/04 DOTA
Python写的贪吃蛇游戏例子
2014/06/16 Python
Python pickle模块用法实例
2015/04/14 Python
socket + select 完成伪并发操作的实例
2017/08/15 Python
Pycharm导入Python包,模块的图文教程
2018/06/13 Python
python爬虫超时的处理的实例
2018/12/19 Python
python 三元运算符使用解析
2019/09/16 Python
python获取引用对象的个数方式
2019/12/20 Python
浅谈tensorflow之内存暴涨问题
2020/02/05 Python
Booking.com荷兰:全球酒店网上预订
2017/08/22 全球购物
企划主管岗位职责
2013/12/12 职场文书
爱情检讨书大全
2014/01/21 职场文书
端午节活动策划方案
2014/03/09 职场文书
丧事答谢词大全
2015/09/30 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
2019年度政务公开考核工作总结模板
2019/11/11 职场文书
微信小程序用户授权最佳实践指南
2021/05/08 Javascript
为Centos安装指定版本的Docker
2022/04/01 Servers