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检测生僻字的实现方法
Oct 23 Python
python字典多键值及重复键值的使用方法(详解)
Oct 31 Python
Python字典的核心底层原理讲解
Jan 24 Python
Python数据报表之Excel操作模块用法分析
Mar 11 Python
python实现简单成绩录入系统
Sep 19 Python
python实现的读取网页并分词功能示例
Oct 29 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
Dec 20 Python
python常用运维脚本实例小结
Feb 14 Python
在Keras中利用np.random.shuffle()打乱数据集实例
Jun 15 Python
没编程基础可以学python吗
Jun 17 Python
Python使用grequests并发发送请求的示例
Nov 05 Python
Python天气语音播报小助手
Sep 25 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 QRCODE生成彩色二维码的方法
2016/05/19 PHP
PHP中FTP相关函数小结
2016/07/15 PHP
全面解析PHP面向对象的三大特征
2017/06/10 PHP
jQuery 源代码显示控件 (Ajax加载方式).
2009/05/18 Javascript
javaScript 判断字符串是否为数字的简单方法
2009/07/25 Javascript
jquery ready()的几种实现方法小结
2010/06/18 Javascript
JQuery+DIV自定义滚动条样式的具体实现
2013/06/25 Javascript
JavaScript函数的4种调用方法详解
2014/04/22 Javascript
基于jQuery的图片不完全按比例自动缩小
2014/07/11 Javascript
javascript实现的元素拖动函数宿主为浏览器
2014/07/21 Javascript
JavaScript基本语法讲解
2015/06/03 Javascript
javascript实现动态表头及表列的展现方法
2015/07/14 Javascript
JS实现的Select三级下拉菜单代码
2015/08/20 Javascript
通过AngularJS实现图片上传及缩略图展示示例
2017/01/03 Javascript
关于ES6的六个小特性(二)
2017/02/20 Javascript
Angular使用cli生成自定义文件、组件的方法
2018/09/04 Javascript
Bootbox将后台JSON数据填充Form表单的实例代码
2018/09/10 Javascript
JavaScript异步操作的几种常见处理方法实例总结
2020/05/11 Javascript
如何实现小程序与小程序之间的跳转
2020/11/04 Javascript
python 合并文件的具体实例
2013/08/08 Python
详解python中的json的基本使用方法
2016/12/21 Python
解决Python一行输出不显示的问题
2018/12/03 Python
Python 从subprocess运行的子进程中实时获取输出的例子
2019/08/14 Python
利用pandas将非数值数据转换成数值的方式
2019/12/18 Python
如何利用Python识别图片中的文字
2020/05/31 Python
Python collections.deque双边队列原理详解
2020/10/05 Python
IE滤镜与CSS3效果(详细整理分享)
2013/01/25 HTML / CSS
详解如何解决使用JSON.stringify时遇到的循环引用问题
2021/03/23 Javascript
模具专业毕业生自荐书范文
2014/02/19 职场文书
副总经理任命书
2014/06/05 职场文书
领导干部群众路线教育实践活动剖析材料
2014/10/10 职场文书
毕业论文答辩开场白
2015/05/27 职场文书
办公室规章制度范本
2015/08/04 职场文书
小学家庭教育心得体会
2016/01/14 职场文书
JavaScript 实现页面滚动动画
2021/04/24 Javascript
我们认为中短波广播场强仪的最佳组合
2022/04/05 无线电