将字典值转换为 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 许可协议

阅读 339
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 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题