def search(n, l): print(l) if len(l) == 0: print("bucunzai") return mid_index = len(l) // 2 if n > l[mid_index]: l = l[mid_index + 1:] return search(n, l) #这个return是返回函数的 发起者 elif n < l[mid_index]: l = l[:mid_index] return search(n, l) #这个return 是返回个函数的 发起者 else: return l[mid_index] #这个return 是给上面的某一个的 最后的结果个发起者 l = [1, 2, 10, 30, 33, 99, 101, 200, 301, 311, 402, 403, 500, 900, 1000] ret = search(33, l) print(ret,l.index(ret))
[1, 2, 10, 30, 33, 99, 101, 200, 301, 311, 402, 403, 500, 900, 1000]
[1, 2, 10, 30, 33, 99, 101]
[33, 99, 101]
[33]
33 4