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发送邮件示例(支持中文邮件标题)
Feb 16 Python
Python中死锁的形成示例及死锁情况的防止
Jun 14 Python
virtualenv实现多个版本Python共存
Aug 21 Python
Python3安装Scrapy的方法步骤
Nov 23 Python
Python编程argparse入门浅析
Feb 07 Python
Php多进程实现代码
May 07 Python
Python实现读取txt文件并转换为excel的方法示例
May 17 Python
在Python中定义一个常量的方法
Nov 10 Python
python用插值法绘制平滑曲线
Feb 19 Python
Python3实现汉语转换为汉语拼音
Jul 08 Python
8段用于数据清洗Python代码(小结)
Oct 31 Python
Python中bisect的使用方法
Dec 31 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
自己做矿石收音机
2021/03/02 无线电
phpwind中的数据库操作类
2007/01/02 PHP
实现了一个PHP5的getter/setter基类的代码
2007/02/25 PHP
PHP函数microtime()用法与说明
2013/12/04 PHP
PHP实现二叉树的深度优先与广度优先遍历方法
2015/09/28 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
2019/10/11 PHP
Git命令之分支详解
2021/03/02 PHP
JS 实现完美include载入实现代码
2010/08/05 Javascript
jquery调取json数据实现省市级联的方法
2015/01/29 Javascript
元素绑定click点击事件方法
2015/06/08 Javascript
基于jquery编写的放大镜插件
2016/03/23 Javascript
基于bootstrap实现广告轮播带图片和文字效果
2016/07/22 Javascript
js运动事件函数详解
2016/10/21 Javascript
巧用Vue.js+Vuex制作专门收藏微信公众号的app
2016/11/03 Javascript
BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析
2016/12/01 Javascript
vuejs父子组件通信的问题
2017/01/11 Javascript
jQuery ajax读取本地json文件的实例
2017/10/31 jQuery
Angular4学习教程之HTML属性绑定的方法
2018/01/04 Javascript
angular.js和vue.js中实现函数去抖示例(debounce)
2018/01/18 Javascript
angularjs实现table增加tr的方法
2018/02/27 Javascript
一秒学会微信小程序制作table表格
2019/02/14 Javascript
python pyheatmap包绘制热力图
2018/11/09 Python
keras处理欠拟合和过拟合的实例讲解
2020/05/25 Python
Python 忽略文件名编码的方法
2020/08/01 Python
HTML5使用Audio标签实现歌词同步的效果
2016/03/17 HTML / CSS
澳大利亚当地社区首选的光学商店:1001 Optical
2019/08/24 全球购物
New Balance俄罗斯官方网上商店:购买运动鞋
2020/03/02 全球购物
函数指针的定义是什么
2016/08/14 面试题
毕业生文员求职信
2013/11/03 职场文书
小学雷锋月活动总结
2014/07/03 职场文书
给女朋友道歉的话大全
2015/01/20 职场文书
班主任自我评价范文
2015/03/11 职场文书
python爬虫selenium模块详解
2021/03/30 Python
Window server中安装Redis的超详细教程
2021/11/17 Redis
Vue监视数据的原理详解
2022/02/24 Vue.js