使用Python中的递归搜索列表?

时间:2014-06-09 02:10:29

标签: python python-3.x recursion

我正在尝试学习递归,但我似乎无法解决问题。我想要做的是通过列表搜索元素,但我不确定我做的方式是否良好。

这是我写的:

def srch(item,myList):
    if myList == []:
        return -1
    if myList[0] == item:
        return True
    elif myList[0] != item:
        return srch(item,myList[1:])

它似乎有效,但我想知道是否有更好的方法只使用我的2个参数?

1 个答案:

答案 0 :(得分:1)

不会说它更好,但它更短......

def srch(item, myList, i=0):
  if i < len(myList):
    return myList[i] == item or srch(item, myList, i+1)
  return -1