diff options
Diffstat (limited to 'Doc/library/timeit.rst')
-rw-r--r-- | Doc/library/timeit.rst | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/Doc/library/timeit.rst b/Doc/library/timeit.rst index 4a0b9c257b..0112994040 100644 --- a/Doc/library/timeit.rst +++ b/Doc/library/timeit.rst @@ -9,6 +9,10 @@ single: Benchmarking single: Performance +**Source code:** :source:`Lib/timeit.py` + +-------------- + This module provides a simple way to time small bits of Python code. It has both command line as well as callable interfaces. It avoids a number of common traps for measuring execution times. See also Tim Peters' introduction to the @@ -187,13 +191,13 @@ interface) that compare the cost of using :func:`hasattr` vs. :keyword:`try`/:keyword:`except` to test for missing and present object attributes. :: - % timeit.py 'try:' ' str.__bool__' 'except AttributeError:' ' pass' + $ python -m timeit 'try:' ' str.__bool__' 'except AttributeError:' ' pass' 100000 loops, best of 3: 15.7 usec per loop - % timeit.py 'if hasattr(str, "__bool__"): pass' + $ python -m timeit 'if hasattr(str, "__bool__"): pass' 100000 loops, best of 3: 4.26 usec per loop - % timeit.py 'try:' ' int.__bool__' 'except AttributeError:' ' pass' + $ python -m timeit 'try:' ' int.__bool__' 'except AttributeError:' ' pass' 1000000 loops, best of 3: 1.43 usec per loop - % timeit.py 'if hasattr(int, "__bool__"): pass' + $ python -m timeit 'if hasattr(int, "__bool__"): pass' 100000 loops, best of 3: 2.23 usec per loop :: @@ -234,10 +238,10 @@ To give the :mod:`timeit` module access to functions you define, you can pass a ``setup`` parameter which contains an import statement:: def test(): - "Stupid test function" + """Stupid test function""" L = [i for i in range(100)] - if __name__=='__main__': + if __name__ == '__main__': from timeit import Timer t = Timer("test()", "from __main__ import test") print(t.timeit()) |