from bisect import bisect_left
def binary_search(lst, n):
i = bisect_left(lst, n)
if i != len(lst) and lst[i] == n:
return i
else:
return -1
lst = [1, 2, 3, 3, 3, 4, 20, 40]
result = binary_search(lst, 3)
if result == -1:
print("Element not Found")
else:
print("Element found at index", result)
'''
run:
Element found at index 2
'''