千家信息网

python中的json简单介绍

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要讲解了"python中的json简单介绍",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"python中的json简单介绍"吧!一 前言最近一
千家信息网最后更新 2026年11月03日python中的json简单介绍

这篇文章主要讲解了"python中的json简单介绍",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"python中的json简单介绍"吧!

一 前言
最近一直在做开发相关的工作--基于Django的web 平台,其中需要从model层传输数据到view 层做数据展示或者做业务逻辑处理。我们采用通用的Json格式--Json(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和程序解析。

二 认识Json
2.1 Json 结构
常见的Json格式为 "名称/值"对的集合,其中 值可以是对象,列表,字典,字符串等等。比如

  1. backup_data = {"back_to_host": "dbbk0",

  2. "ip_address": "10.10.20.3",

  3. "host_name": "rac4",

  4. "port": 3306}

2.2 使用Json
Python的Json模块序列化与反序列化的过程分别是 编码和解码。这两个过程涉及到两组不同的函数
编码 把一个Python对象编码转换成Json字符串,json.dumps(data)/json.dump(data,file_handler)
解码 把Json格式字符串解码转换成Python对象,json.loads(data)/json.load(file_handler)
在python中要使用Json模块做相关操作,必须先导入:

  1. import Json

2.3 主要函数
编码函数主要有 json.dumps(data)/json.dump(data,file_handler)
json.dumps()的参数是将python对象转换为字符串,如使用json.dumps序列化的对象json_dumps=json.dumps({'a':1, 'b':2}) ,json_dumps='{"b": 2, "a": 1}'
json.dump 是将内置类型序列化为json对象后写入文件。
解码函数主要由json.loads(data)/json.load(file_handler)
json.loads的参数是内存对象,把Json格式字符串解码转换成Python对象,json_loads=json.loads(d_json) #{ b": 2, "a": 1},使用load重新反序列化为dict
json.load()的参数针对文件句柄,比如本地有一个文件/tmp/test.json json_load=json.load(open('/tmp/test.json'))

具体案例参考如下:

  1. In [3]: data={"back_to_host": "rac1",

  2. ...: "ip_address": "10.215.20.3",

  3. ...: "host_name": "rac3",

  4. ...: "port": 3306}

  5. In [7]: json_str=json.dumps(data)

  6. In [8]: print json_str

  7. {"ip_address": "10.215.20.3", "back_to_host": "rac1", "host_name": "rac3", "port": 3306}

  8. In [9]: json_loads=json.load(json_str)

  9. ---------------------------------------------------------------------------

  10. AttributeError Traceback (most recent call last)

  11. in ()

  12. ----> 1 json_loads=json.load(json_str)

  13. /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/__init__.pyc in load(fp, encoding, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw)

  14. 284

  15. 285 ""

注意 从上面的报错信息来看 json.loads 传参是字符串类型,并不是文件句柄,没有 read()属性。

  1. In [10]: json_loads=json.loads(json_str)

  2. In [11]: print json_loads

  3. {u'back_to_host': u'rac1', u'ip_address': u'10.215.20.3', u'host_name': u'rac3', u'port': 3306}

  4. In [12]: type(json_loads)

  5. Out[12]: dict

  6. In [13]: type(json_str)

  7. Out[13]: str

利用dump 将数据写入 dump.json

  1. In [17]: with open('/tmp/dump.json','w') as f:

  2. ...: json.dump(json_str,f)

  3. ...:

  4. yangyiDBA:~ yangyi$ cat /tmp/dump.json

  5. "{\"ip_address\": \"10.10.20.3\", \"back_to_host\": \"rac1\", \"host_name\": \"rac3\", \"port\": 3306}"

  6. yangyiDBA:~ yangyi$

利用json.load 将dump.sjon的数据读出来并赋值给 data

  1. In [18]: with open('/tmp/dump.json','r') as f:

  2. ...: data=json.load(f)

  3. ...:

  4. In [19]: print data

  5. {"ip_address": "10.10.20.3", "back_to_host": "rac1", "host_name": "rac3", "port": 3306}

感谢各位的阅读,以上就是"python中的json简单介绍"的内容了,经过本文的学习后,相信大家对python中的json简单介绍这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

对象 字符 字符串 序列 数据 格式 函数 文件 编码 参数 学习 内容 句柄 模块 类型 过程 不同 业务 两个 内存 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技公司排名 上海睿民互联网科技有限公司 互联网科技公司经营范围 互联网和科技创新 科技类互联网 易互联网科技有限公司 广州宏创互联网科技 新浪科技互联网 奔汉互联网科技 撒么互联网科技公司 镁科技互联网资讯平台 联恩商钥互联网科技有限公司 深圳市运趣互联网科技有限公司 烟台灵鸽互联网科技有限公司 合肥互联网科技公司公章图片 梅州GM互联网络科技有限公司 风投北京互联网科技 宁波跨境商互联网科技有限公司 广东鹅鹅鹅互联网科技有限公司 武汉亿视互联网科技有限公司 美国互联网保险保险科技 A股互联网金融科技公司 青岛中康互联网医疗科技有限公司 青岛科技大学互联网大赛研究生 米聚互联网科技南京有限公司排面 燊美集互联网科技有限公司 畅思互联网科技 互联网科技公司营业执照怎么办理 长沙互联网科技 互联网科技大佬云集
0