From 333518e01df0ce011962ca8629e766a59316e1cb Mon Sep 17 00:00:00 2001 From: Andrew Kuchling Date: Tue, 21 Apr 2015 19:43:33 -0400 Subject: [PATCH] #15183: clarify timeit documentation to say that setup statement isn't timed --- Doc/library/timeit.rst | 2 ++ Lib/timeit.py | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Doc/library/timeit.rst b/Doc/library/timeit.rst index 503a705fbc3..70df409fac7 100644 --- a/Doc/library/timeit.rst +++ b/Doc/library/timeit.rst @@ -94,6 +94,8 @@ The module defines three convenience functions and a public class: method. The :meth:`.repeat` method is a convenience to call :meth:`.timeit` multiple times and return a list of results. + The execution time of *setup* is excluded from the overall timed execution run. + The *stmt* and *setup* parameters can also take objects that are callable without arguments. This will embed calls to them in a timer function that will then be executed by :meth:`.timeit`. Note that the timing overhead is a diff --git a/Lib/timeit.py b/Lib/timeit.py index 9cec000f739..cf7446d8c1f 100755 --- a/Lib/timeit.py +++ b/Lib/timeit.py @@ -14,7 +14,8 @@ Command line usage: Options: -n/--number N: how many times to execute 'statement' (default: see below) -r/--repeat N: how many times to repeat the timer (default 3) - -s/--setup S: statement to be executed once initially (default 'pass') + -s/--setup S: statement to be executed once initially (default 'pass'). + Execution time of this setup statement is NOT timed. -p/--process: use time.process_time() (default is time.perf_counter()) -t/--time: use time.time() (deprecated) -c/--clock: use time.clock() (deprecated)