Python中dumps()函数的输出格式配置及定制化设置
发布时间:2024-01-08 16:10:50
Python中的dumps()函数是用于将Python对象转换为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)
下面我们来详细介绍一些常用的参数及其使用例子:
1. indent参数
indent参数用于指定每一级缩进的空格数量,可以用来美化输出的JSON字符串。默认情况下,indent参数为None,表示不进行缩进。
import json
data = {'name': 'John', 'age': 30, 'city': 'New York'}
# 不使用缩进
json_string = json.dumps(data)
print(json_string)
# 使用2个空格进行缩进
json_string = json.dumps(data, indent=2)
print(json_string)
输出结果:
{"name": "John", "age": 30, "city": "New York"}
{
"name": "John",
"age": 30,
"city": "New York"
}
2. separators参数
separators参数用于指定在生成JSON字符串时的分隔符的字符串。默认情况下,separators参数为(', ', ': '),表示用逗号加空格分隔属性和冒号加空格分隔属性名称和属性值。
import json
data = {'name': 'John', 'age': 30, 'city': 'New York'}
# 默认的分隔符
json_string = json.dumps(data)
print(json_string)
# 去掉分隔符
json_string = json.dumps(data, separators=(',', ':'))
print(json_string)
输出结果:
{"name": "John", "age": 30, "city": "New York"}
{"name":"John","age":30,"city":"New York"}
3. sort_keys参数
sort_keys参数用于指定在生成JSON字符串时是否按照属性名称进行排序。默认情况下,sort_keys参数为False,表示按照属性在对象中的顺序进行输出。
import json
data = {'name': 'John', 'age': 30, 'city': 'New York'}
# 不排序
json_string = json.dumps(data, sort_keys=False)
print(json_string)
# 排序
json_string = json.dumps(data, sort_keys=True)
print(json_string)
输出结果:
{"name": "John", "age": 30, "city": "New York"}
{"age": 30, "city": "New York", "name": "John"}
这些是一些常用的参数及其使用例子,还有一些其他的参数如skipkeys、ensure_ascii、check_circular、allow_nan、cls、default等,可以根据具体需求进行查阅和使用。
