gpt4 book ai didi

python - pyYaml - 导出时不带 "-"

转载 作者:行者123 更新时间:2023-12-01 08:17:01 26 4
gpt4 key购买 nike

我需要使用 pyyaml 将 dict 导出到 yaml,不带“-”

    export_dash_dict = {}
export_dash_dict["dashboards"] = []
for dashboard in dashboards_to_export:
single_dashboard = {}
single_dashboard[dashboard.title] = {}
single_dashboard[dashboard.title]["owner"] = dashboard.owner.username
single_dashboard[dashboard.title]["description"] = dashboard.description
export_dash_dict["dashboards"].append(single_dashboard)

final_yaml = yaml.dump(export_dash_dict, default_flow_style=False,default_style=None)

这就是 pyyaml 导出我的字典的方式:

dashboards:
- Dashboard title 1:
description: First
owner: username1
- Dashboard title 2:
description: Second
owner: username2

使用在线解析,这就是我得到的:

{
"dashboards": [
{
"Dashboard title 1": {
"owner": "username1",
"description": "First"
}
},
{
"Dashboard title 2": {
"owner": "username2",
"description": "Second"
}
}
]
}

但我需要这样的东西:

dashboards:
Dashboard title 1:
description: First
owner: username1
Dashboard title 2:
description: Second
owner: username2

使用在线解析器:

{
"dashboards": {
"Dashboard title 2": {
"owner": "username2",
"description": "Second"
},
"Dashboard title 1": {
"owner": "username1",
"description": "First"
}
}
}

这样,当我使用 yaml.load 时,我可以避免整个级别的数据

我正在使用:default_flow_style=False 参数,但我找不到避免“-”的方法这是 YAML 的标准吗?

最佳答案

yaml 转储正确导出您的数据结构。您有一本包含一个键和一个值的字典 (export_dash_dict)。其中一个键是 dashboards,其值是一个包含两个元素的列表。这两个元素是字典(其内容我们不会在这里讨论,但它们有两个键值对)。

您所说的要导出的数据结构不是具有一个键/值对(其中值是列表)的字典,而是具有两个键值对的字典。第一个键是Dashboard title 1,它的值是一个字典(有两个键值对,我们不会在这里详细说明)。第二个键是Dashboard title 2,它的值是一个字典(同样有两个键值对,我们不会详细说明)。

如果您希望yaml.dump编写这样的数据结构,则需要构造该数据结构。

关于python - pyYaml - 导出时不带 "-",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54923346/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com