我的账户
码尚云教育

云计算企业项目实战营

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

玩转Python解析JSON

[复制链接]
云鼎 发表于 2022-9-19 14:24:42 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。Python3 中可以使用 json 模块来对 JSON 数据进行编解码.


Python 编码为 JSON 类型转换对应表:



我们通过代码来看下如何实现对json的解析操作呢...


  • import json
  • data = {
  •     'name': 'gebilaowang',
  •     'age': 26,
  •     'sex': 'female',
  •     'work': 'mairou',
  •     'address': {'province': 'Fujian', 'city': 'xiamen'}
  • }

[color=rgb(15, 199, 122) !important]复制代码



如果我们想要将data这个字典类型转换为JSON对象,代码可以这样写:
  • jsonStr = json.dumps(data)
  • print(jsonStr)

[color=rgb(15, 199, 122) !important]复制代码

最终执行结果是:
  • {"name": "gebilaowang", "age": 26, "sex": "female", "work": "mairou", "address": {"province": "Fujian", "city": "xiamen"}}

[color=rgb(15, 199, 122) !important]复制代码



如果我们要将JSON对象类型转换为Python的字典类型,代码如下:
  • testDict = json.loads(jsonStr)
  • print(testDict['address'])

[color=rgb(15, 199, 122) !important]复制代码

最终执行结果是:
  • {'province': 'Fujian', 'city': 'xiamen'}

[color=rgb(15, 199, 122) !important]复制代码



那么如何将Python字典直接输出到一个json文件呢?
  • with open('test.json', 'w', encoding='utf-8') as f:
  •     json.dump(testDict, f, ensure_ascii=False, indent=4)

[color=rgb(15, 199, 122) !important]复制代码



将json文件对象中的JSON字符串直接转换成Python字典代码如下:
  • with open('test.json', 'r', encoding='utf-8') as f:
  •     retDict = json.load(f)
  •     print(type(retDict))
  •     print(retDict['name'])

[color=rgb(15, 199, 122) !important]复制代码

[color=rgb(15, 199, 122) !important]


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

maxs
  • 管理员
此人很懒,什么都没有留下。

关注0

粉丝0

帖子45

发布主题
大家都在学
课堂讨论
关注我们
码尚云云计算培训

客服电话:18710061913

周一至周日: 7:00-24:00

码尚云教育( 陕ICP备2023009934号-2 )

Powered by Discuz! X3.4© 2016-2023 Comsenz Inc.