我创建了一个字典,将名称(字符串)映射到一个集合,并将其定义如下:
dict = {"a" : {"one", "two", "three"},
"b" : {"one", "two", "three"},
"c" : {"one", "two", "three", "four"}}
然后我使用了一个键列表,如["b", "c"]
来搜索dict
的键,我想使用set.add()
连接这些集,如下所示:
output = set()
keys_to_search_for = ["b", "c"]
for i in keys_to_search_for:
if i in dict.keys():
output.add(dict[key])
这产生了错误unhashable type: 'set'
,但是我检查了output
和dict[key]
的类型,它们都是集合。我以为set.add()可以连接两个集合
您需要将字典本身是一个集合的值作为元素添加到输出集合中。您需要执行联合或更新:
output = output.union(dict[key])
或
output.update(dict[key])
注意:不要将单词dict用作变量
要将一个集合添加到另一个集合,应使用
Set.update
相关问题 更多 >
编程相关推荐