将字典值转换为 Python 中的列表

新手上路,请多包涵

假设我有一个包含键和值的字典 (dict),如下所示:

打印(字典)

 {'AAA': {'', '111', '222'}, 'BBB': {'222', '999', '555'}}

我想以单个字符串的形式从字典中提取值,即 type(values) = str ,例如:

 values = '111', '222', '999', 555'

但我得到的是下面 dict.values()

字典键()

 dict_keys(['AAA', 'BBB'])

字典.values()

 dict_values([{'', '111', '222'}, {'222', '999', '555'}])

我怎样才能达到要求的结果?

原文由 greencar 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 338
1 个回答

您可以使用 itertools.chain 来执行此操作:

 In [92]: from itertools import chain

In [93]: dct = {'AAA': {'', '111', '222'}, 'BBB': {'222', '999', '555'}}

In [94]: {x for x in chain(*dct.values()) if x}
Out[94]: {'111', '222', '555', '999'}

如果要将此输出转换为单个字符串,只需使用 str() 调用它,或使用 ", ".join(x for x in chain(*dct.values()) if x)

原文由 Anshul Goyal 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题