我正在使用resnik相似性算法来查找两个同义词集之间的相似性,并且在python中以以下方式使用它:
def get_maximum(synset1,synset2):
maxSim = None
for s1 in synset1:
for s2 in synset2:
sim = s1.res_similarity(s2)
if maxSim == None or maxSim < sim:
maxSim = sim
return maxSim
在这里,我得到以下错误:
Typeerror: res_similarity() takes at least 3 arguments (2 given)
有人可以告诉我第三个论点吗?
最佳答案
来自文档的Typeerror:
在将操作或功能应用于以下对象时引发
不适当的类型。关联的值是一个提供详细信息的字符串
有关类型不匹配的信息。
在这种情况下,您有一个函数名称res_similarity()
,需要使用2个参数。
您看到给出的3和2的原因是因为它也具有self
。
例如,res_similarity(self, arg1, arg2)
您仅传递1个参数-s2
您需要再向该方法传递一个参数