1 def binarySearch(lst, key): 2 low = 0 3 high = len(lst) - 1 4 5 while high >= low: 6 mid = (low + high) / 2 7 if key < lst[mid]: 8 high = mid - 1 9 elif key == lst[mid]: 10 return mid 11 else: 12 low = mid + 1 13 14 return -low - 1 # Now high < low