import sys
sys.path.append('../../r21')        # Dodanie folderu, gdzie znajduje się plik timer2.py do ścieżki wyszukiwania
import timer2                       # Sztuczka! Wróć do części V po więcej informacji na temat ścieżki

reps = 10_000
repslist = list(range(reps))        # Pobranie pełnego przedziału listy pomiarów

from math import sqrt               # Nie math.sqrt: dodaje czas pobrania atrybutu
def mathMod():
    for i in repslist:
        res = sqrt(i)
    return res

def powCall():
    for i in repslist:
        res = pow(i, .5)
    return res

def powExpr():
    for i in repslist:
        res = i ** .5
    return res

print(sys.version)
for test in (mathMod, powCall, powExpr):
    elapsed, result = timer2.bestoftotal(test, _reps1=5, _reps=1000)
    print (f'{test.__name__}: {elapsed:.5f} => {result}')

