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



我有一个字典是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

我试过x, y, z=flightterminals

根据你目前的方法,x,yz将成为字典的键,即Terminal 1,Terminal 2Terminal 3

然后您可以索引字典以检索值,这些值是您感兴趣的集合。

由于集合是无序集合,因此可以使用sorted函数对元素进行排序。

请注意,sorted将返回list:['1', '2', '3'],然后您可以使用str.join将该列表中的元素用逗号连接起来。

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个键,它会在键数不同的情况下失效。因此,值得将其一般化以处理任意数量的键。

可以通过使用dict.values()方法直接从flightterminals字典中获取值来实现。

使用这种方法,代码既简单又通用:
for value in flightterminals.values():
print(", ".join(sorted(value)))

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

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

相关内容

  • 没有找到相关文章