#1、数据必须是有序序列 #2、掐头去尾去取中间 #3、每次查找查找都可以过滤一半的数据 #4、折半查找,二分法查找 lst=[1,4,6,34,45] left=0 right=len(lst)-1 target = 4 post=0 while left<=right: mid = (left + right) // 2 if target>lst[mid]: left=mid+1 elif target<lst[mid]: right=mid-1 else: print("找到了这个数",mid) break else: print("没有这个数据")