我是python的新手。我有一个字典,其子集为值,链接:
dict = {key1: [value1, value2, value 3], key2: [value4], key3: [value5, value6]}
等等。
我想将一些值的子集存储在一个新集合中。例如,我想合并key1和key3中的值,以便
set1 = [value1, value2, value 3,value5, value6]
我试过这样的事情:
d1= set()
d1.add(dict['key1'])
d1.add(dict['key3'])
但它似乎不起作用(我得到错误TypeError:unhashable type:'set')。有什么帮助吗?
答案 0 :(得分:0)
在尝试加入其值之前,您必须将每个列表强制转换为一组:
>>> set(dict["key1"]) | set(dict["key3"])
{'value 3', 'value1', 'value2', 'value5', 'value6'}
答案 1 :(得分:0)
d1= set()
map(d1.add, dict['key1'])
map(d1.add, dict['key3'])
答案 2 :(得分:0)
使用理解力:
new_set = {v for v_list in dict.values() for v in v_list}