当我尝试运行它时,为什么'else'部分标记为红色?它说'语法无效'。
def interseccion(lista, lista2, resultado=[]):
if lista != []:
if lista[0] in lista2:
return interseccion(lista[1:], lista2, resultado+[lista[0]]
else:
return interseccion(lista[1:], lista2, resultado]
return resultado
答案 0 :(得分:2)
特定错误是由于缺少右括号:
return interseccion(lista[1:], lista2, resultado+[lista[0]] ) <-- that parenthesis is needed
答案 1 :(得分:0)
您必须在两个返回语句中关闭括号:
return interseccion(lista[1:], lista2, resultado+[lista[0]])
和
return interseccion(lista[1:], lista2, resultado)
同样if lista != []:
更像是if lista:
。
我不确定你是否希望resultado
默认为空列表!也许默认值应为None
,然后您可以指定:
if resultado is None:
resultado = []
一开始。