当前位置:   article > 正文

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

json 列表


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

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




一、json 格式转换




1、json 模块使用


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

import json
  • 1

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

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

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

json_str = json.dumps(data)
  • 1

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

data = json.loads(json_str)
  • 1

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


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

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

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

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

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

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

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

代码示例 :

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


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

执行结果 :

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

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在这里插入图片描述


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


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

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

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

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

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

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

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

代码示例 :

"""
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}")
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

执行结果 :

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

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/171190
推荐阅读
相关标签
  

闽ICP备14008679号