"""
Niewymienione ani nieuruchomione w książce: dodatkowe pomiary iteratorów. Powtarzają się z wcześniejszym timer_tests.py w rozdziale. Czasy są stosunkowo takie same, ale wyższe, z powodu range():

Python 3.12.2 on darwin at Jun-26-2024, 17:12:08
0.4558  'res=[]\nfor x in range(10_000): res.append(abs(x))'
0.3744  '[abs(x) for x in range(10_000)]'
0.2861  'list(map(abs, range(10_000)))'
0.5770  'list(abs(x) for x in range(10_000))'
"""

import pybench

stmts = [
# Wywołania funkcji: map wygrywa
    (0, 0, 'res=[]\nfor x in range(10_000): res.append(abs(x))'),
    (0, 0, '[abs(x) for x in range(10_000)]'),
    (0, 0, 'list(map(abs, range(10_000)))'),
    (0, 0, 'list(abs(x) for x in range(10_000))'),
]

pybench.runner(stmts, None, False)

