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

gre*_*car 1 python dictionary list key-value-store

假设我有一个字典(dict),其键和值如下:

打印(字典)

{'AAA': {'', '111', '222'}, 'BBB': {'222', '999', '555'}}
Run Code Online (Sandbox Code Playgroud)

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

values = '111', '222', '999', 555'
Run Code Online (Sandbox Code Playgroud)

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

dict.keys()

dict_keys(['AAA', 'BBB'])
Run Code Online (Sandbox Code Playgroud)

dict.values()

dict_values([{'', '111', '222'}, {'222', '999', '555'}])
Run Code Online (Sandbox Code Playgroud)

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

mu *_*u 無 5

您可以使用以下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'}
Run Code Online (Sandbox Code Playgroud)

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