Python—JSON数据解析
1.安装pip
pip是python的包管理工具,使用它能非常方便地安装和卸载各种python工具包
第一步:直接用浏览器访问地址:https://raw.github.com/pypa/pip/master/contrib/get-pip.py,直接打开了get-pip.py的源代码,可以直接把内容拷贝出来,然后在本地创建get-pip.py
第二步:控制台进入到get-pip.py所在目录,运行代码:
python get-pip.py
pip默认安装实在当前版本python目录的script下,所以将此目录设置到环境变量path中即可,我的目录是 C:\Python27\Scripts
2.安装demjson模块
windows下,打开cmd控制台窗口,使用pip命令安装,命令如下:
pip install demjson
3.json字符串和python对象之间转换的示例代码如下
# -*- coding:UTF-8 -*-
'''
Created on 2015年9月14日 @author: xiaowenhui
''' import demjson '''
encode:编码,将python对象编码成JSON字符串
decode:解码,将JSON字符串解码成python对象
''' data1 = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
json1 = demjson.encode(data1)
print json1 json2 = '{"a":1,"b":2,"c":3,"d":4,"e":5}'
data2 = demjson.decode(json2)
print data json3 = "{'Transformers': {'rating': 'R', 'description': 'A schientific fiction', 'format': 'DVD', 'stars': '8', 'year': '1989', 'type': 'Anime, Science Fiction'}, 'Ishtar': {'rating': 'PG', 'type': 'Comedy', 'description': 'Viewable boredom', 'stars': '2', 'format': 'VHS'}, 'Enemy Behind': {'rating': 'PG', 'description': 'Talk about a US-Japan war', 'format': 'DVD', 'stars': '10', 'year': '2003', 'type': 'War, Thriller'}, 'Trigun': {'rating': 'PG', 'description': 'Vash the Stampede!', 'format': 'DVD', 'episodes': '4', 'stars': '10', 'type': 'Anime, Action'}}"
data3 = demjson.decode(json3)
print data3
输出结果如下:
[{"a":1,"b":2,"c":3,"d":4,"e":5}]
[{'a': 1, 'c': 3, 'b': 2, 'e': 5, 'd': 4}]
{u'Enemy Behind': {u'rating': u'PG', u'description': u'Talk about a US-Japan war', u'format': u'DVD', u'stars': u'', u'year': u'', u'type': u'War, Thriller'}, u'Ishtar': {u'rating': u'PG', u'type': u'Comedy', u'description': u'Viewable boredom', u'stars': u'', u'format': u'VHS'}, u'Transformers': {u'rating': u'R', u'description': u'A schientific fiction', u'format': u'DVD', u'stars': u'', u'year': u'', u'type': u'Anime, Science Fiction'}, u'Trigun': {u'rating': u'PG', u'description': u'Vash the Stampede!', u'format': u'DVD', u'episodes': u'', u'stars': u'', u'type': u'Anime, Action'}}
Python—JSON数据解析的更多相关文章
- Python | JSON 数据解析(Json & JsonPath)
一.什么是JSON? JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的一 ...
- 浅谈JSON数据解析方法
JSON数据解析 JSON是什么?? 如何把JSON数据解析出来 如何把一个字典转换为JSON JSON详细介绍 JSON(JavaScript Object Notation) 是一种轻量级的数据交 ...
- iOS - JSON 数据解析
iOS - JSON 数据解析 前言 NS_CLASS_AVAILABLE(10_7, 5_0) @interface NSJSONSerialization : NSObject @availab ...
- [开源 .NET 跨平台 数据采集 爬虫框架: DotnetSpider] [四] JSON数据解析
[DotnetSpider 系列目录] 一.初衷与架构设计 二.基本使用 三.配置式爬虫 四.JSON数据解析与配置系统 场景模拟 假设由于漏存JD SKU对应的店铺信息.这时我们需要重新完全采集所有 ...
- JSON数据解析 基础知识及链接收集
JSON数据解析学习 JSON介绍 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式. JSON 是存储和交换文本信息的语法.类似 XML.但是JSON 比 ...
- JSON数据解析(转)
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 本文将主要介绍在Android ...
- JSON数据解析(GSON方式) (转)
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种理想的数据交换格式. 在上一篇博文<Andro ...
- iOS开发笔记3:XML/JSON数据解析
这篇主要总结在iOS开发中XML/JSON数据解析过程用到的方法.XML数据解析主要使用SAX方式的NSXMLParser以及DOM方式的GDataXML,JSON数据解析主要使用NSJSONSeri ...
- Silverlight项目笔记7:xml/json数据解析、TreeView、引用类型与数据绑定错误、图片加载、虚拟目录设置、silverlight安全机制引发的问题、WebClient缓存问题
1.xml/json数据解析 (1)xml数据解析 使用WebClient获取数据,获取到的数据实例化为一个XDocument,使用XDocument的Descendants(XName)方法获得对应 ...
随机推荐
- 解决Android单个dex文件不能超过65535个方法问题
一.找坑:谷歌规定单个dex文件中的方法不能超过65536的限制 我们编写项目过程中在工程的lib文件夹下引用的第三方插件jar包太多或者项目过大,编译运行时就有可能报出com.android.dex ...
- [原创]C++带空格字符串的输入问题
字符串一直是一个重点加难点,很多笔试面试都会涉及,带空格的字符串更是十分常见,现在对字符串的输入问题进行一下总结. C++用cin输入的时候会忽略空格以后的字符,比如 char a[100]; cin ...
- SDL2源代码分析
1:初始化(SDL_Init()) SDL简介 有关SDL的简介在<最简单的视音频播放示例7:SDL2播放RGB/YUV>以及<最简单的视音频播放示例9:SDL2播放PCM>中 ...
- curl及wget使用说明
Date: 2019-06-19 Author: Sun 1. curl的使用 注意:安装的时候可能会遇到报错,有可能是openssl没装, apt install curl apt install ...
- 路飞学城Python-Day137
django项目二 个人博客系统 github地址:https://github.com/pandaboy1123/cnblog
- Windows自调试Redis
一.安装Redis 1. Redis官网下载地址:http://redis.io/download,下载相应版本的Redis,在运行中输入cmd,然后把目录指向解压的Redis目录. 2.启动服务命令 ...
- BZOJ 3876 [AHOI/JSOI2014]支线剧情 (最小费用可行流)
题面:洛谷传送门 BZOJ传送门 题目大意:给你一张有向无环图,边有边权,让我们用任意条从1号点开始的路径覆盖这张图,需要保证覆盖完成后图内所有边都被覆盖至少一次,求覆盖路径总长度的最小值 最小费用可 ...
- MAVEN 的常用命令
1.清除命令:mvn clean 2.编译命令:mvn conpile 3.打包命令:mvn package 4.跳过单元测试命令:mvn clean package -Dmaven.test.sk ...
- centos 如何执行.bin 文件??
默认下载,或者上传到 linux 上的 .bin 文件都是白色的,不能被执行. 想要用 ./ 命令去执行,需要先给这个 bin 文件赋权限 chmod u+x 文件名(全名称) 执行完成这个命令,可以 ...
- springmvc上传操作
创建虚拟目录 配置tomcat的配置文件server.xml 在真实路径中放置一个图片 启动服务器: 直接可以通过配置的虚拟路径来访问真实路径中的图片 所以 我们在做图片上传的操作的时候 就可 ...