python:JSON数据格式的转换
宁夏回族自治区
2025-06-24 13:07:47
0
Python,JSON是一种流行的数据格式,用于系统之间的数据交换。JSON模块提供了处理JSON数据的函数c;允许您将Python对象序列化为JSON字符串并将JSON字符串反序列化回Python对象。
JSON序列化。
JSON序列化是将Python对象转换为JSON格式的过程。这是一种容易传输或存储数据的格式,以后重建回原来的形式是非常有用的。
Python为JSON序列化和反序列化提供了json模块。在这个模块中,我们可以使用json.dumps()序列化的方法。
json.dumps()方法。
语法:
json。.。dumps。(。obj。,*。,skipkeys。=False。,ensure_ascii。=True。,check_circular。=True。,allow_nan。=True。,cls。=None。,indent。=None。,separators。=None。,default。=None。,sort_keys。=False。,**。kw。)。
功能。:将。obj。
序列化为 JSON 格式字符串,使用以下转换表:
dumps()方法参数说明。:
skipkeys。
:如果。skipkeys。
为。True。
(默认值:False。
),会跳过那些不是基本类型的(str、int、float、bool、None)key字典c;而不是。TypeError。
。ensure_ascii。
:如果。ensure_ascii。
为。True。
(默认值)#xff0;,输出将确保所有输入的非输出 ASCII 所有的字符都被转义。如果。ensure_ascii。
为。False。
,这些字符将按原样输出。check_circular。
:如果。check_circular。
为。False。
(默认值:True。
),检查,跳过对容器类型的循环c;会导致循环引用。RecursionError。
(或者更糟)。allow_nan。
:如果。allow_nan。
为。False。
(默认值:True。
),严格遵循 JSON 在规范的情况下,超出范围的序列化浮点值(nan。
,inf。
,-inf。
)将引发。ValueError。
。如果。allow_nan。
为。True。
,它们将被使用 JavaScript 等价物(NaN。
,Infinity。
,-Infinity。
)。indent。
:如果。indent。
非负整数或字符串,那么 JSON 数组元素和对象成员将以这个缩进级别进行美化和打印。一个缩进级为0、负或空字符串(")只能插入换行符。使用。None。
(默认值)#xff0;选择最紧凑的表达方式。使用正整数缩进,每个级别都会缩小这么多空间。如果。indent。
字符串(例如。"\t"
),然后,字符串将用于每个级别的缩进。separators。
:若指定。separators。
,它应该是一个。(item_separator, key_separator)。
元组。如果 indent 是 None,默认值是。(', ', ': ')。
,否则是。(',', ': ')。
。得到最紧凑的 JSON 表示形式您应该指定。(',', ':')。
消除空白字符。default。
:若指定。default。
,它应该是函数,用于处理不能通过其他方式序列化的对象。这个函数应该返回一个可以被允许的函数 JSON 编码版本的对象,或者抛出一个。TypeError。
。假如没有指定。default。
,则会抛出。TypeError。
。sort_keys。
:如果。sort_keys。
为。True。
(默认值为。False。
),按键排序字典的输出。
示例。
示例:将python字典转换为JSON字符串。
import。jsondata。 ={ 。"省份":。"陕西","城市":。"延安"}。}。
使用以下代码反序列化:
import。json。with。open。(。'data.json','r',encoding。='UTF-8')。as。f。:。python_obj。 =json。.。load。(。f。)。print。(。python_obj。)。
运行输出: