要每个字典里面的键值对为一行,不同字典之间换行
时间: 2023-12-29 17:12:41 浏览: 35
要实现这个功能,可以结合使用`json.dumps()`方法的`indent`参数和`separators`参数。`indent`参数设置为`None`或`0`表示不缩进,`separators`参数用于设置分隔符。具体来说,`separators`是一个元组,包含两个字符串,分别表示键值对之间的分隔符和项之间的分隔符。例如,将`separators`设置为(`,`, `\n`),表示键值对之间使用逗号分隔,不同的字典之间使用换行符分隔。示例如下:
```
import json
lst = [
{'name': 'Alice', 'age': 20},
{'name': 'Bob', 'age': 25, 'gender': 'male'},
{'name': 'Charlie', 'age': 30, 'gender': 'male', 'address': {'city': 'New York', 'country': 'USA'}}
]
result = json.dumps(lst, indent=None, separators=(',', '\n'))
print(result)
```
输出结果如下:
```
{"name": "Alice", "age": 20}
,
{"name": "Bob", "age": 25, "gender": "male"}
,
{"name": "Charlie", "age": 30, "gender": "male", "address": {"city": "New York", "country": "USA"}}
```
在这个例子中,`lst`是一个包含三个字典的列表。`json.dumps()`方法将其转换为一个JSON字符串,并通过设置`indent`参数为`None`和`separators`参数为(`,`, `\n`),使每个字典里的键值对占据一行,不同字典之间使用换行符分隔。