Python JSON 转换为字符串

在 Python 中,我们可以使用 json 模块的 dumps() 函数来将一个 JSON 转换成一个字符串。大家应该知道,字典列表都是最常用来转换为 JSON 格式的数据结构。

其中,dumps 是 “dump string” (的缩写)。

语法:

json.dumps(data, ensure_ascii=False)

说明:

data 是必选参数,它是一个 JSON 数据,也就是字典或列表。ensure_ascii=False 是可选参数,如果内容包含中文,就必须加上。

提示: json.dumps() 函数用于将 JSON 转为字符串,而 json.loads() 函数用于将字符串转为 JSON。

示例 1:将 “字典型 JSON” 转为字符串

import json

data = {'book': '从0到1', 'author': 'Jack', 'price': 59}
result = json.dumps(data, ensure_ascii=False)

print(result)
print(type(result))

运行结果如下。

{"book": "从0到1", "author": "Jack", "price": 59}
<class 'str'>

分析:

data 是一个字典,json.dumps() 会将它转换成一个字符串,也就是把整个字典塞到一个单引号里面去,即:'{"book": "从0到1", "author": "Jack", "price": 59}'。这种符合 JSON 格式的字符串也叫做 “JSON 字符串”。

示例 2:将 “列表型 JSON” 转为字符串

import json

data = [{'name': '小杰', 'age': 21}, {'name': '小兰', 'age': 19}, {'name': '小华', 'age': 20}]
result = json.dumps(data, ensure_ascii=False)

print(result)
print(type(result))

运行结果如下。

[{"name": "小杰", "age": 21}, {"name": "小兰", "age": 19}, {"name": "小华", "age": 20}]
<class 'str'>

分析:

data 是一个列表,json.dumps() 会将它转换成一个字符串,也就是把整个列表塞到一个单引号里面去,即:'[{"name": "小杰", "age": 21}, {"name": "小兰", "age": 19}, {"name": "小华", "age": 20}]'。

为什么要将 JSON 转换为字符串?

到这里小伙伴肯定会问了,我们为什么要把一个 JSON(字典或列表)转化成一个字符串呢?这样做有什么意义吗?实际上,由于 JSON 格式简单方便,所以它被大量应用于 “服务端” 和 “客户端” 之间的数据传输。

比如你访问一个网页,网页的内容就是从 “服务端” 传输到你的 “浏览器(客户端)”,然后才能看到网页的内容。而服务端与客户端之间的数据传输,只能是字符串,而不能是其他数据类型。也就是说,如果数据存放在列表中,你是不能直接把这个列表进行传输的,而是需要先要转换成字符串,然后才能够在服务端与客户端之间进行传输。

现在小伙伴们应该知道为什么我们要把一个 JSON 转换成字符串了吧?这样做的目的,其实就是为了能够在服务端与客户端之间进行传输数据。

上一篇: Python 元组转列表

下一篇: Python 内置函数

给站长反馈

绿叶网正在不断完善中,小伙伴们如果发现任何问题,还望多多给站长反馈,谢谢!

邮箱:lvyenet@vip.qq.com

「绿叶网」服务号
绿叶网服务号放大
关注服务号,微信也能看教程。
绿叶网服务号