我有以下python代码:
def myFunction(myDictionary, query):
D=set()
for i in range(len(query)):
if query[i] in myDictionary.keys():
if i==0:
D.update((myDictionary[query[i]])
else:
D.intersection_update(myDictionary[query[i]])
return D
myDictionary
包含如下字典项:{'first':{0,1,2}, 'second':{5,2,1}, ..etc}
. 查询包含所有单词列表,例如['first','second',..ect,]
我想返回所有query
单词的交集。例如,如果query=['first','second']
和myDictionary={'first':{0,1,2}, 'second':{5,2,1}}
,那么我的结果集应该是交集,即:{1,2}
。
运行代码时,else 语句中出现语法错误。我添加if i==0
是因为否则我的结果集D
将始终为空集。我看不出我的代码有什么问题。