summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@redhat.com>2018-06-06 15:55:18 (GMT)
committerGitHub <noreply@github.com>2018-06-06 15:55:18 (GMT)
commit3ef769fcd378a7f1cda19c0dfec2e79613d79e48 (patch)
tree3b17ddf6edf3f37d1b292dd0e150bc9e8c24e8e3
parent492d6424a7ca907c8ec1df21e51062e8f3d88e32 (diff)
downloadcpython-3ef769fcd378a7f1cda19c0dfec2e79613d79e48.zip
cpython-3ef769fcd378a7f1cda19c0dfec2e79613d79e48.tar.gz
cpython-3ef769fcd378a7f1cda19c0dfec2e79613d79e48.tar.bz2
bpo-28240: timeit: Update repeat() doc (GH-7419)
Document that the default value of repeat changed from 3 to 5 in Python 3.7.
-rw-r--r--Doc/library/timeit.rst14
-rwxr-xr-xLib/timeit.py4
2 files changed, 12 insertions, 6 deletions
diff --git a/Doc/library/timeit.rst b/Doc/library/timeit.rst
index d922fd6..93ca940 100644
--- a/Doc/library/timeit.rst
+++ b/Doc/library/timeit.rst
@@ -69,7 +69,7 @@ The module defines three convenience functions and a public class:
The optional *globals* parameter was added.
-.. function:: repeat(stmt='pass', setup='pass', timer=<default timer>, repeat=3, number=1000000, globals=None)
+.. function:: repeat(stmt='pass', setup='pass', timer=<default timer>, repeat=5, number=1000000, globals=None)
Create a :class:`Timer` instance with the given statement, *setup* code and
*timer* function and run its :meth:`.repeat` method with the given *repeat*
@@ -79,6 +79,9 @@ The module defines three convenience functions and a public class:
.. versionchanged:: 3.5
The optional *globals* parameter was added.
+ .. versionchanged:: 3.7
+ Default value of *repeat* changed from 3 to 5.
+
.. function:: default_timer()
The default timer, which is always :func:`time.perf_counter`.
@@ -150,7 +153,7 @@ The module defines three convenience functions and a public class:
.. versionadded:: 3.6
- .. method:: Timer.repeat(repeat=3, number=1000000)
+ .. method:: Timer.repeat(repeat=5, number=1000000)
Call :meth:`.timeit` a few times.
@@ -171,6 +174,9 @@ The module defines three convenience functions and a public class:
should be interested in. After that, you should look at the entire
vector and apply common sense rather than statistics.
+ .. versionchanged:: 3.7
+ Default value of *repeat* changed from 3 to 5.
+
.. method:: Timer.print_exc(file=None)
@@ -208,7 +214,7 @@ Where the following options are understood:
.. cmdoption:: -r N, --repeat=N
- how many times to repeat the timer (default 3)
+ how many times to repeat the timer (default 5)
.. cmdoption:: -s S, --setup=S
@@ -246,7 +252,7 @@ successive powers of 10 until the total time is at least 0.2 seconds.
:func:`default_timer` measurements can be affected by other programs running on
the same machine, so the best thing to do when accurate timing is necessary is
to repeat the timing a few times and use the best time. The :option:`-r`
-option is good for this; the default of 3 repetitions is probably enough in
+option is good for this; the default of 5 repetitions is probably enough in
most cases. You can use :func:`time.process_time` to measure CPU time.
.. note::
diff --git a/Lib/timeit.py b/Lib/timeit.py
index 418166d..c0362bc 100755
--- a/Lib/timeit.py
+++ b/Lib/timeit.py
@@ -13,7 +13,7 @@ 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)
+ -r/--repeat N: how many times to repeat the timer (default 5)
-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())
@@ -184,7 +184,7 @@ class Timer:
This is a convenience function that calls the timeit()
repeatedly, returning a list of results. The first argument
- specifies how many times to call timeit(), defaulting to 3;
+ specifies how many times to call timeit(), defaulting to 5;
the second argument specifies the timer argument, defaulting
to one million.