Better handling of time
This commit is contained in:
parent
b5c4004959
commit
78abb7a5e8
@ -5,19 +5,31 @@ from functools import wraps
|
|||||||
def timeit(name):
|
def timeit(name):
|
||||||
def profile(original):
|
def profile(original):
|
||||||
import time
|
import time
|
||||||
|
|
||||||
@wraps(original)
|
@wraps(original)
|
||||||
def wrapper(*args, **kwargs):
|
def wrapper(*args, **kwargs):
|
||||||
t0 = time.perf_counter()
|
t0 = time.perf_counter()
|
||||||
result = original(*args, **kwargs)
|
result = original(*args, **kwargs)
|
||||||
t1 = time.perf_counter()
|
t1 = time.perf_counter()
|
||||||
print(f"Time to evaluate problem {int(name[7:]):003d}: {(t1 - t0)*1000:.3f} ms\n")
|
if (t1 - t0) > 1:
|
||||||
|
print(
|
||||||
|
f"Time to evaluate problem {int(name[7:]):003d}: "
|
||||||
|
f"{(t1 - t0):.3f} s\n"
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
print(
|
||||||
|
f"Time to evaluate problem {int(name[7:]):003d}: "
|
||||||
|
f"{(t1 - t0)*1000:.3f} ms\n"
|
||||||
|
)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
return wrapper
|
return wrapper
|
||||||
|
|
||||||
return profile
|
return profile
|
||||||
|
|
||||||
|
|
||||||
def is_prime(n):
|
def is_prime(n):
|
||||||
if n <2:
|
if n < 2:
|
||||||
return False
|
return False
|
||||||
for i in range(2, int(math.sqrt(n)) + 1):
|
for i in range(2, int(math.sqrt(n)) + 1):
|
||||||
if n % i == 0:
|
if n % i == 0:
|
||||||
@ -45,4 +57,4 @@ def list_primes(n):
|
|||||||
|
|
||||||
|
|
||||||
def is_palindrome(num):
|
def is_palindrome(num):
|
||||||
return str(num) == str(num)[::-1]
|
return str(num) == str(num)[::-1]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user