如何仅打印字典中集合中的值?

2024-09-29 21:43:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一本字典是flightterminals={"Terminal 1":{"1", "2", "3"},"Terminal 2":{"1", "2", "3"}, "Terminal 3":{"1", "2", "3"}}

如何打印集合中的内容,而不使用引号、括号或大括号。但是,我确实需要逗号

输出应如下所示:

1, 2, 3
1, 2, 3
1, 2, 3

我试过了


Tags: 内容字典大括号terminal引号括号逗号flightterminals
1条回答
网友
1楼 · 发布于 2024-09-29 21:43:36

根据您当前的方法,xyz将成为字典的键,即Terminal 1Terminal 2Terminal 3

然后,您可以索引字典以检索您感兴趣的值集

由于sets are unordered collections,您可以使用^{}函数对元素进行排序

请注意sorted将返回一个list,如下所示:['1', '2', '3'],然后可以使用^{}将该列表中的元素连接起来,中间带有逗号

flightterminals = {
    "Terminal 1": {"1", "2", "3"},
    "Terminal 2": {"1", "2", "3"},
    "Terminal 3": {"1", "2", "3"}
}

x, y, z = flightterminals
for key in x, y, z:
    print(", ".join(sorted(flightterminals[key])))

虽然上述方法很好,并且在假设字典中有3个键的情况下可以工作,但如果键的数量不同,则会中断。因此,值得将其推广到处理任意数量的密钥

可以通过使用^{}方法直接从flightterminals字典获取值来实现这一点

使用这种方法,代码既简单又通用:

for value in flightterminals.values():
    print(", ".join(sorted(value)))

在这两种情况下,输出如下:

1, 2, 3
1, 2, 3
1, 2, 3

相关问题 更多 >

    热门问题