Python操作json的方法实例分析

yipeiwu_com6年前Python基础

本文实例讲述了Python操作json的方法。分享给大家供大家参考,具体如下:

python中对json操作方法有两种,解码loads()和编码dumps()

简单来说:

import json
dicts = json.loads()   #loads()方法,将json串解码为python对象,字典
json = json.dumps(dicts) #dumps()方法,将python字典编码为json串

简单例子:

>>> import json
>>> dicts = {'name':'test','type':[{'happy':'fish'},{'sad':'man'}]}  #python的字典
>>> print(dicts.keys())        #python的字典可以通过内置的字典方法操作keys 和values
dict_keys(['type', 'name'])
>>> print(dicts['name'])
test
>>> print(dicts['type'][0]['happy'])
fish
>>> print(dicts['type'][1]['sad'])
man
>>> j = json.dumps(dicts)      #通过dumps()方法,将python字典编码为json串
>>> j
'{"type": [{"happy": "fish"}, {"sad": "man"}], "name": "test"}'
>>> print(j['name'])         #json不能通过字典方法获取keys 和 values了。
Traceback (most recent call last):
 File "<pyshell#10>", line 1, in <module>
  print(j['name'])
TypeError: string indices must be integers

更多的信息,可以参考python内部的json文档:

python>>> help(json)

如下图所示:

或者官方文档:
http://docs.python.org/library/json.html

PS:这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:
http://tools.jb51.net/code/json_yasuo_trans

更多Python相关内容感兴趣的读者可查看本站专题:《Python操作json技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

在arcgis使用python脚本进行字段计算时是如何解决中文问题的

在arcgis使用python脚本进行字段计算时是如何解决中文问题的

一、引言   在arcgis打开一个图层的属性表,可以对属性表的某个字段进行计算,但是在平常一般都是使用arcgis提供的字段计算器的界面进行傻瓜式的简答的赋值操作,并没有使用到脚本对字...

Python查找数组中数值和下标相等的元素示例【二分查找】

本文实例讲述了Python查找数组中数值和下标相等的元素。分享给大家供大家参考,具体如下: 题目描述: 假设一个单调递增的数组中的每个元素都是整数并且是唯一的。请编程实现一个函数,找出数...

Linux下python3.6.1环境配置教程

Linux下python3.6.1环境配置教程

linux系统环境自带python2.6,但有时我们项目使用的版本可能是3.x以上等等,此时我们需要在linux中再安装项目所需的python版本,此时就涉及多版本共存问题了,很多同学在...

详解Python使用tensorflow入门指南

TensorFlow是Google公司2015年11月开源的第二代深度学习框架,是第一代框架DistBelief的改进版本. TensorFlow支持python和c/c++语言,...

利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例

利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例

前言 最近的一个项目中需要在图片上添加文字,使用了OpenCV,结果发现利用opencv给图像添加文字有局限。可利用的字体类型比较少,需要安装Freetype扩展,比较复杂。而且不能用p...