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

文章目录

  • 一、json 格式转换
    • 1、json 模块使用
    • 2、代码示例分析 – 列表转 json
    • 3、代码示例分析 – 字典转 json

json 格式 字符串 与 Python 中的 字典 dict 和 列表 list 变量 可以无缝转换 ;

  • 调用 json.dumps 函数 可以将 Python 列表 / 字典 转为 json ;
  • 调用 json.loads 函数 ,可以将 json 转为 python 列表 / 字典 ;




一、json 格式转换



1、json 模块使用


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

import json

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

data = [{"name": "Tom", "age": 18}, {"name": "Jerry", "age": 12}]

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

json_str = json.dumps(data)

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

data = json.loads(json_str)

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


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

data_list = [{"name": "Tom", "age": 18}, {"name": "Jerry", "age": 12}]

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

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

[{"name": "Tom", "age": 18}, {"name": "Jerry", "age": 12}]

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

[{'name': 'Tom', 'age': 18}, {'name': 'Jerry', 'age': 12}]

代码示例 :

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


执行结果 :

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 字符串类型 ;

data_dict = {"name": "Trump", "age": "80"}

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

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

{"name": "Trump", "age": "80"}

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

{'name': 'Trump', 'age': '80'}

代码示例 :

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

执行结果 :

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

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
xiaoxingxing的头像xiaoxingxing管理团队
上一篇 2023年8月17日
下一篇 2023年8月17日

相关推荐