Files
Learn-Python-Programming-Th…/ch05/performance.py
T
adii1823 ef37ce0c4e ch05
2021-10-28 17:38:16 +05:30

30 lines
766 B
Python

# performance.py
from time import time
mx = 5000
t = time() # start time for the for loop
floop = []
for a in range(1, mx):
for b in range(a, mx):
floop.append(divmod(a, b))
print('for loop: {:.4f} s'.format(time() - t)) # elapsed time
t = time() # start time for the list comprehension
compr = [
divmod(a, b) for a in range(1, mx) for b in range(a, mx)]
print('list comprehension: {:.4f} s'.format(time() - t))
t = time() # start time for the generator expression
gener = list(
divmod(a, b) for a in range(1, mx) for b in range(a, mx))
print('generator expression: {:.4f} s'.format(time() - t))
# verify correctness of results and number of items in each list
print(
floop == compr == gener, len(floop), len(compr), len(gener)
)