首页 技术 正文
技术 2022年11月21日
0 收藏 607 点赞 3,408 浏览 1349 个字

认识

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"] }

案例

python 解析json loads dumps

python 解析json loads dumps

 

排序 

python 解析json loads dumps

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

python 解析json loads dumps

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

结果

python 解析json loads dumps

缩进参数

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

结果

python 解析json loads dumps

压缩

python 解析json loads dumps

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

参考

官网

使用python解析json文件

Json概述以及python对json的相关操作

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,909
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,434
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,249
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,060
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,692
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,730