前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Python】json 格式转换 ① ( json 模块使用 | 列表转 json | json 转列表 | 字典转 json | json 转字典 )

【Python】json 格式转换 ① ( json 模块使用 | 列表转 json | json 转列表 | 字典转 json | json 转字典 )

作者头像
韩曙亮
发布2023-10-11 19:53:03
3920
发布2023-10-11 19:53:03
举报
json 格式 字符串 与 Python 中的 字典 dict 和 列表 list 变量 可以无缝转换 ;
  • 调用 json.dumps 函数 可以将 Python 列表 / 字典 转为 json ;
  • 调用 json.loads 函数 ,可以将 json 转为 python 列表 / 字典 ;

一、json 格式转换

1、json 模块使用

首先 , 导入 Python 内置的 json 模块 ;

代码语言:javascript
复制
import json

然后 , 准备 python 数据 , 将数据放到 list 列表中 , 列表中的元素是 dict 字典 ;

代码语言:javascript
复制
data = [{"name": "Tom", "age": 18}, {"name": "Jerry", "age": 12}]

再后 , 调用 json.dumps 函数 , 将 列表 数据转为 json 字符串数据 ;

代码语言:javascript
复制
json_str = json.dumps(data)

最后 , 调用 json.loads 函数 , 将 json 转为 python 数据 ;

代码语言:javascript
复制
data = json.loads(json_str)

2、代码示例分析 - 列表转 json

定义一个 Python 列表 , 列表中的元素是 dict 字典 ;

代码语言:javascript
复制
data_list = [{"name": "Tom", "age": 18}, {"name": "Jerry", "age": 12}]

打印上述列表的类型为 <class 'list'> ;

调用 json.dumps 函数 , 将上述 data_list 列表变量 转为 json 字符串 , 转换后的 json_str 变量 类型为 <class 'str'> 类型 , 值为 :

代码语言:javascript
复制
[{"name": "Tom", "age": 18}, {"name": "Jerry", "age": 12}]

调用 json.loads 函数 , 将 json_str 变量 , 也就是 json 字符串 , 转为 Python 列表变量 , 转换后的 data_list2 变量 类型为 <class 'list'> , 变量值为 :

代码语言:javascript
复制
[{'name': 'Tom', 'age': 18}, {'name': 'Jerry', 'age': 12}]

代码示例 :

代码语言:javascript
复制
"""
json 格式转换 代码示例
"""

import json

# I. 列表 转 json

# 定义 Python 列表 , 列表中元素为 dict 字段
data_list = [{"name": "Tom", "age": 18}, {"name": "Jerry", "age": 12}]
print(f"data_list 类型 : {type(data_list)} 值为 {data_list}")

# 将列表转为 json
json_str = json.dumps(data_list)
# 打印 json 字符串结果
print(f"json_str 类型 : {type(json_str)} 值为 {json_str}")

# 将 json 转为 Python 列表数据
data_list2 = json.loads(json_str)
print(f"data_list2 类型 : {type(data_list2)} 值为 {data_list2}")

执行结果 :

代码语言:javascript
复制
D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py
data_list 类型 : <class 'list'> 值为 [{'name': 'Tom', 'age': 18}, {'name': 'Jerry', 'age': 12}]
json_str 类型 : <class 'str'> 值为 [{"name": "Tom", "age": 18}, {"name": "Jerry", "age": 12}]
data_list2 类型 : <class 'list'> 值为 [{'name': 'Tom', 'age': 18}, {'name': 'Jerry', 'age': 12}]

Process finished with exit code 0
在这里插入图片描述
在这里插入图片描述

3、代码示例分析 - 字典转 json

定义一个 Python 字典 , 字典中的键值对元素类型都是 str 字符串类型 ;

代码语言:javascript
复制
data_dict = {"name": "Trump", "age": "80"}

打印上述 data_dict 变量 的类型为 <class 'dict'> ;

调用 json.dumps 函数 , 将上述 data_dict 字典变量 转为 json 字符串 , 转换后的 json_str 变量 类型为 <class 'str'> 类型 , 值为 :

代码语言:javascript
复制
{"name": "Trump", "age": "80"}

调用 json.loads 函数 , 将 json_str 变量 , 也就是 json 字符串 , 转为 Python 字典变量 , 转换后的 data_dict2 变量 类型为 <class 'dict'> , 变量值为 :

代码语言:javascript
复制
{'name': 'Trump', 'age': '80'}

代码示例 :

代码语言:javascript
复制
"""
json 格式转换 代码示例
"""

import json

# II. 字典 转 json

data_dict = {"name": "Trump", "age": "80"}
print(f"data_dict 类型 : {type(data_dict)} 值为 {data_dict}")

# 将字典转为 json
json_str = json.dumps(data_dict)
# 打印 json 字符串结果
print(f"json_str 类型 : {type(json_str)} 值为 {json_str}")

# 将 json 转为 Python 字段数据
data_dict2 = json.loads(json_str)
print(f"data_dict2 类型 : {type(data_dict2)} 值为 {data_dict2}")

执行结果 :

代码语言:javascript
复制
D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py
data_dict 类型 : <class 'dict'> 值为 {'name': 'Trump', 'age': '80'}
json_str 类型 : <class 'str'> 值为 {"name": "Trump", "age": "80"}
data_dict2 类型 : <class 'dict'> 值为 {'name': 'Trump', 'age': '80'}

Process finished with exit code 0
在这里插入图片描述
在这里插入图片描述
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-07-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • json 格式 字符串 与 Python 中的 字典 dict 和 列表 list 变量 可以无缝转换 ;
  • 一、json 格式转换
    • 1、json 模块使用
      • 2、代码示例分析 - 列表转 json
        • 3、代码示例分析 - 字典转 json
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
        http://www.vxiaotou.com