我正在尝试学习递归,但我似乎无法解决问题。我想要做的是通过列表搜索元素,但我不确定我做的方式是否良好。
这是我写的:
def srch(item,myList):
if myList == []:
return -1
if myList[0] == item:
return True
elif myList[0] != item:
return srch(item,myList[1:])
它似乎有效,但我想知道是否有更好的方法只使用我的2个参数?
答案 0 :(得分:1)
不会说它更好,但它更短......
def srch(item, myList, i=0):
if i < len(myList):
return myList[i] == item or srch(item, myList, i+1)
return -1