Python进行JSON格式化输出

先写一个字典并将其转换成JSON格式:

# encoding:utf-8

import json

dic = {'a': 1, 'b': 2, 'c': 3}
js = json.dumps(dic)
print(js)

打印出的是如下这个样子,一行式的:

{'a': 1, 'c': 3, 'b': 2}

看上去还可以接受吧,但是万一这JSON有一长串串串串串的话……可能编辑器都要hold不住了。
这个时候我们就可以对其进行格式化输出,json.dumps里就有自带的功能参数:

# encoding:utf-8

import json

dic = {'a': 1, 'b': 2, 'c': 3}
js = json.dumps(dic, sort_keys=True, indent=4, separators=(',', ':'))
print(js)

我们来对这几个参数进行下解释:
sort_keys:是否按照字典排序(a-z)输出,True代表是,False代表否。
indent=4:设置缩进格数,一般由于Linux的习惯,这里会设置为4。
separators:设置分隔符,在dic = {'a': 1, 'b': 2, 'c': 3}这行代码里可以看到冒号和逗号后面都带了个空格,这也是因为Python的默认格式也是如此,如果不想后面带有空格输出,那就可以设置成separators=(',', ':'),如果想保持原样,可以写成separators=(', ', ': ')
解释好了,最后看下运行成果:

{
    "a":1,
    "c":3,
    "b":2
}

是不是棒棒的~

Python中,我们可以使用json模块来读写JSON数据并进行格式化输出。首先,我们可以使用json.load()函数来读取JSON数据并将其转换为Python字典。例如,我们可以使用以下代码读取一个名为example.json的文件并将其转换为字典: ```python import json with open('example.json', 'r') as file: data = json.load(file) print(data) ``` 这将打开example.json文件并将其内容转换为一个字典,并将其打印出来。\[2\] 如果我们想要将Python字典转换为JSON格式进行格式化输出,我们可以使用json.dumps()函数。例如,我们可以使用以下代码将一个名为load_dict的字典转换为JSON格式进行格式化输出: ```python import json load_dict = {'one': 1, 'two': {2.1: \['a', 'b'\]}} with open("./format_json.json", 'w') as write_f: write_f.write(json.dumps(load_dict, indent=2, ensure_ascii=False)) with open("./format_json.json", 'r') as load_f: load_dict = json.load(load_f) print(load_dict) ``` 这将把load_dict字典转换为JSON格式并写入到名为format_json.json的文件中。然后,我们再次读取该文件并将其转换为字典,并将其打印出来。\[3\] #### 引用[.reference_title] - *1* [【Python读写JSON格式化输出,让数据更清晰】](https://blog.csdn.net/update7/article/details/129680159)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Python读写JSON 格式化输出](https://blog.csdn.net/update7/article/details/129717519)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [python读写json 格式化输出](https://blog.csdn.net/jacke121/article/details/115438658)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值