0
def makeInverseIndex(strlist):
 return { s:{ j if strlist[i] in strlist[j].split() for j in range(len(strlist)) } 
        for (i,s) in enumerate(strlist) }

Python代码中的语法错误是什么?

4

1 回答 1

5

除非您还有一个部分(三元运算符) ,否则您不能在任何理解if的左侧有一个语句。你需要向右移动forelseif strlist[i] in strlist[j].split()

def makeInverseIndex(strlist):
    return {s:{j for j in range(len(strlist)) if strlist[i] in strlist[j].split()}
            for (i,s) in enumerate(strlist)}
于 2013-07-14T07:42:08.567 回答