I want to calculate the runtime of two different algorithms in the same program. When I wrote a program calculating the runtime of each individually, I obtained very different results, so to test this new program, I had python calculate the runtime for the same algorithm twice. When I did this (in the program found below), I found that the runtimes of the same algorithm were in fact different! What am I missing and how do I fix this so I can compare algorithms?
import timeit
def calc1(x):
    return x*x+x+1
def calc2(x):
    return x*x+x+1
def main():
    x = int(input("Input a number to be tested: "))
    start1 = timeit.default_timer()
    result1 = calc1(x)
    end1 = timeit.default_timer()
    start2 = timeit.default_timer()
    result2 = calc2(x)
    end2 = timeit.default_timer()
    print("Result of calculation 1 was {0}; time to compute was {1} seconds.".format(result1,end1-start1))
    print("Result of calculation 2 was {0}; time to compute was {1} seconds.".format(result2,end2-start2))
main()
 
    