当前位置: 首页 > news >正文

Python JSON

JSON 函数

json.dumps

语法

实例

json.loads

语法

实例

使用第三方库:Demjson

环境配置

JSON 函数

encode

语法

实例

decode

语法

实例


JSON 函数

使用 JSON 函数需要导入 json 库:import json

函数描述
json.dumps将 Python 对象编码成 JSON 字符串
json.loads将已编码的 JSON 字符串解码为 Python 对象

json.dumps

json.dumps 用于将 Python 对象编码成 JSON 字符串。

语法

json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)

实例

以下实例将数组编码为 JSON 格式数据:

#!/usr/bin/python
import jsondata = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]data2 = json.dumps(data)
print(data2)

[{"a": 1, "c": 3, "b": 2, "e": 5, "d": 4}]
 

#!/usr/bin/python
import jsondata = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]data2 = json.dumps({'a': 'Runoob', 'b': 7}, sort_keys=True, indent=4, separators=(',', ': '))
print(data2)

{
    "a": "Runoob",
    "b": 7
}
 

python 原始类型向 json 类型的转化对照表:

PythonJSON
dictobject
list, tuplearray
str, unicodestring
int, long, floatnumber
Truetrue
Falsefalse
Nonenull

json.loads

json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。

语法

json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])

实例

以下实例展示了Python 如何解码 JSON 对象:

#!/usr/bin/python
import jsonjsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}';text = json.loads(jsonData)
print(text)

以上代码执行结果为:

{u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4}

json 类型转换到 python 的类型对照表:

JSONPython
objectdict
arraylist
stringunicode
number (int)int, long
number (real)float
trueTrue
falseFalse
nullNone

更多内容参考:18.2. json — JSON encoder and decoder — Python 2.7.18 documentation。


使用第三方库:Demjson

Demjson 是 python 的第三方模块库,可用于编码和解码 JSON 数据,包含了 JSONLint 的格式化及校验功能。

Github 地址:GitHub - dmeranda/demjson: Python module for JSON data encoding, including jsonlint. See the project Wiki here on Github. Also read the README at the bottom of this page, or the project homepage at

官方地址:http://deron.meranda.us/python/demjson/

环境配置

在使用 Demjson 编码或解码 JSON 数据前,我们需要先安装 Demjson 模块。本教程我们会下载 Demjson 并安装:

$ tar -xvzf demjson-2.2.3.tar.gz
$ cd demjson-2.2.3
$ python setup.py install

更多安装介绍查看:http://deron.meranda.us/python/demjson/install

JSON 函数

函数描述
encode将 Python 对象编码成 JSON 字符串
decode将已编码的 JSON 字符串解码为 Python 对象

encode

Python encode() 函数用于将 Python 对象编码成 JSON 字符串。

语法

demjson.encode(self, obj, nest_level=0)

实例

以下实例将数组编码为 JSON 格式数据:

#!/usr/bin/python
import demjsondata = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]json = demjson.encode(data)
print(json)

以上代码执行结果为:

[{"a":1,"b":2,"c":3,"d":4,"e":5}]

decode

Python 可以使用 demjson.decode() 函数解码 JSON 数据。该函数返回 Python 字段的数据类型。

语法

demjson.decode(self, txt)

实例

以下实例展示了Python 如何解码 JSON 对象:

#!/usr/bin/python
import demjsonjson = '{"a":1,"b":2,"c":3,"d":4,"e":5}';text = demjson.decode(json)
print(text)

{u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4}

http://www.lryc.cn/news/442682.html

相关文章:

  • 【华为杯】2024华为杯数模研赛F题 解题思路
  • Object Pascal 结构化程序设计
  • 机器学习算法与实践_03概率论与贝叶斯算法笔记
  • 如何使用Privoxy将SOCKS5代理转换为HTTP代理?
  • AJAX(一)HTTP协议(请求响应报文),AJAX发送请求,请求问题处理
  • Git进阶(十五):Git LFS 使用详解
  • 操作系统 | 学习笔记 | | 王道 | 5.1 I/O管理概述
  • 关于es的一个多集群、多索引切换的实现
  • Linux系统编程(基础指令)上
  • 【STM32 Blue Pill编程】-定时器PWM模式
  • 数字英文验证码识别 API 对接说明
  • 稳了,搭建Docker国内源图文教程
  • 零工市场小程序:推动零工市场建设
  • 回归预测 | Matlab实现SSA-HKELM麻雀算法优化混合核极限学习机多变量回归预测
  • VCNet论文阅读笔记
  • Python 装饰器使用详解
  • Vue使用qrcodejs2-fix生成网页二维码
  • 兼容多个AI应用接口,支持用户自定义切换AI接口
  • [docker]入门
  • 《让手机秒变超级电脑!ToDesk云电脑、易腾云、青椒云移动端评测》
  • Nginx处理带有分号“;“的路径
  • Spring Boot框架下的心理教育辅导系统开发
  • PyTorch 图像分割模型教程
  • 物联网——USART协议
  • 前端框架对比与选择:如何在现代Web开发中做出最佳决策
  • 【浅水模型MATLAB】尝试复刻SCI论文中的溃坝流算例
  • 探索云计算:IT行业的未来趋势
  • [PICO VR眼镜]眼动追踪串流Unity开发与使用方法,眼动追踪打包报错问题解决(Eye Tracking/手势跟踪)
  • 一周热门|比GPT-4强100倍,OpenAI有望年底发布GPT-Next;1个GPU,1分钟,16K图像
  • 软考流水线计算