implementation of binary rand search with wrapper
import random
import timeit
#random binary search
def binary_randsearch(lst, val):
while lst != []:
select = random.randrange(0, len(lst))
if lst[select] == val:
return select
elif lst[select] > val:
lst = lst[:select]
elif lst[select] < val:
lst = lst[select:]
return False
def wrapper(func, *args, **kwargs):
def wrapped():
return func(*args, **kwargs)
return wrapped
wrappedrbinary = wrapper(binary_randsearch, list(range(90)), 43)
# timeit.timeit(wrappedrand)