python 解析json loads dumps

认识

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。

引用模块

import json

重要函数

  • 编码:把一个Python对象编码转换成Json字符串   json.dumps()
  • 解码:把Json格式字符串解码转换成Python对象   json.loads()

案例

Python解析Json字符串数组对象:

Python解析Json,Python格式化Json,

Python处理Json对象,Python处理Json数组

1

import json

2

data= json.loads('{"ID": "2", "IP":"192.168.1.186", "Port": "3000", "Sensor_Count":"1", "Control_Count": "1", "Sensors":{"Sensor_Name": "Json解析", "Type_Count": "1", "Types":{ "types":["temp","C"],"types":["hum","N"],}},"Controls":["LCD","Relay"] }')

3

print data.ID

4

输出结果:"2"

5

data = json.dump(data)

6

print data

7

输出结果:{"ID": "2", "IP":"192.168.1.186", "Port": "3000", "Sensor_Count":"1","Control_Count": "1", "Sensors":{"Sensor_Name": "tem", "Type_Count": "1", "Types":{"types":["temp","C"],"types":["hum","N"],}},"Controls":["LCD","Relay"] }

排序 

data1 = {'b':789,'c':456,'a':123}
data2 = {'a':123,'b':789,'c':456}
d1 = json.dumps(data1,sort_keys=True)
d2 = json.dumps(data2)
d3 = json.dumps(data2,sort_keys=True)
print d1
print d2
print d3
print d1==d2

:本来data1和data2数据应该是一样的(词典无序的)

结果

缩进参数

data1 = {'b':789,'c':456,'a':123}
d1 = json.dumps(data1,sort_keys=True,indent=4)
print d1

结果

压缩

注:separators = (',', ':')为固定吧,多或少或反都不是理想的结果

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏GIS讲堂

geotools中shp和geojson格式的相互转换

1.1K30
来自专栏高性能服务器开发

(三)dict哈希结构3

/* This function performs just a step of rehashing, and only if there are * no...

29080
来自专栏java系列博客

HibernateCallback 的用法

12520
来自专栏前端儿

Tree

Little Valentine liked playing with binary trees very much. Her favorite game wa...

17220
来自专栏函数式编程语言及工具

SDP(9):MongoDB-Scala - data access and modeling

    MongoDB是一种文件型数据库,对数据格式没有硬性要求,所以可以实现灵活多变的数据存储和读取。MongoDB又是一种分布式数据库,与传统关系数据库不同...

40540
来自专栏开发与安全

90% of python in 90 minutes

注:本文整理自 http://www.slideshare.net/MattHarrison4/learn-90 -----------------------...

23700
来自专栏技术之路

设计模式:装饰者模式

  装饰者模式么,在生活中我们是经常接触的。比如像我们这么快节奏的生活,好多都是早上去买煎饼。一般我们会这么说:“来一个粗粮煎饼,加两个鸡蛋,加一根肠” 或者:...

21980
来自专栏Java3y

JSON就是这么简单

什么是JSON JSON:JavaScript Object Notation 【JavaScript 对象表示法】 JSON 是存储和交换文本信息的语法。类似...

28350
来自专栏一个会写诗的程序员的博客

禅与 JavaScript 编程艺术, Zen and The Art of JavaScript Programming禅与 JavaScript 编程艺术

Zen and The Art of JavaScript Programming

13110
来自专栏码匠的流水账

聊聊sentinel的ModifyRulesCommandHandler

本文主要研究一下sentinel的ModifyRulesCommandHandler

13410

扫码关注云+社区

领取腾讯云代金券