import time
import random
memo = {}
def f(x):
if x in memo:
print("Hit.\t\tf({})".format(x))
return memo[x]
else:
print("Computing...\tf({})".format(x))
time.sleep(0.25)
res = random.randint(0, 10)
memo[x] = res
return res
[f(random.randint(0, 10)) for _ in range(10)]