184 Commits

Author SHA1 Message Date
Serhiy Storchaka
2085bd0877 bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-13700) 2019-06-01 11:00:15 +03:00
Christian Heimes
d914596a67 bpo-36559: random module: optimize sha512 import (GH-12742)
The random module now prefers the lean internal _sha512 module over hashlib
for seed(version=2) to optimize import time.

Signed-off-by: Christian Heimes <christian@python.org>
2019-04-10 13:18:02 -07:00
Raymond Hettinger
5382203ae1 Convert range to repeat for choices() (#11889) 2019-02-16 13:30:51 -08:00
Raymond Hettinger
cfd31f0af2 Be consistent about the use of from-imports in random module (GH-11837)
Minor code clean-up.
2019-02-13 02:04:17 -08:00
Kumar Akshay
2433a2ab70 bpo-35782: Fix error message in randrange (GH-11620)
https://bugs.python.org/issue35782
2019-01-21 11:19:59 -08:00
leodema
63d152232e bpo-30561: Sync-up expovariate() and gammavariate code (GH-1934) 2018-12-23 22:54:25 -08:00
Victor Stinner
8db5b54463 bpo-35513, unittest: TextTestRunner uses time.perf_counter() (GH-11180)
TextTestRunner of unittest.runner now uses time.perf_counter() rather
than time.time() to measure the execution time of a test: time.time()
can go backwards, whereas time.perf_counter() is monotonic.

Similar change made in libregrtest, pprint and random.
2018-12-17 11:30:34 +01:00
Raymond Hettinger
09473ac063 Remove unnecessary and over-restrictive type check (GH-10905) 2018-12-04 14:53:14 -08:00
Raymond Hettinger
7fc633f5a5 Add comments regarding speed/space/entropy trade-offs (GH-10885) 2018-12-04 00:13:38 -08:00
Raymond Hettinger
0a18e0510a Hoist the float conversion out of the inner loop. (GH-10430)
Currently, the *n* and *total* variables get converted to floats each time they are multiplied by random().  This minor tweak does the conversion just once and gets a small speedup (approx 3%).
2018-11-09 02:39:50 -08:00
Raymond Hettinger
e69cd169af Minor code refactoring. Compute len() one fewer times on one code path. (GH-8094) 2018-07-04 15:28:20 -07:00
Raymond Hettinger
ddf7171911 bpo-24567: Random subnormal.diff (#7954)
Handle subnormal weights for choices()
2018-06-27 01:08:31 -07:00
Serhiy Storchaka
ec1622d56c bpo-33144: Fix choosing random.Random._randbelow implementation. (GH-6563)
random() takes precedence over getrandbits() if defined later
in the class tree.
2018-05-08 15:45:15 +03:00
Wolfgang Maier
ba3a87aca3 bpo-33144: random.Random and subclasses: split _randbelow implementation (GH-6291) 2018-04-17 08:16:17 -07:00
Wolfgang Maier
091e95e900 bpo-33203: Ensure random.choice always raises IndexError on empty sequence (GH-6338) 2018-04-05 08:19:44 -07:00
Raymond Hettinger
132a7d7cdb bpo-31482: Missing bytes support for random.seed() version 1 (#3614)
bpo-31482: Missing bytes support for random.seed() version 1 #3614
2017-09-17 09:04:30 -07:00
Raymond Hettinger
f5ea83f486 random_triangular: sqrt() is more accurate than **0.5 (#3317) 2017-09-04 16:51:06 -07:00
leodema
9f396b605e fix comment (#1798) 2017-06-04 07:41:41 +01:00
Gregory P. Smith
163468a766 bpo-16500: Don't use string constants for os.register_at_fork() behavior (#1834)
Instead use keyword only arguments to os.register_at_fork for each of the scenarios.
Updates the documentation for clarity.
2017-05-29 10:03:41 -07:00
Antoine Pitrou
346cbd351e bpo-16500: Allow registering at-fork handlers (#1715)
* bpo-16500: Allow registering at-fork handlers

* Address Serhiy's comments

* Add doc for new C API

* Add doc for new Python-facing function

* Add NEWS entry + doc nit
2017-05-27 17:50:54 +02:00
Raymond Hettinger
bb2839b680 Issue #29055: Suppress upstream exception for random.choice() 2016-12-27 01:06:52 -08:00
Raymond Hettinger
bf87126a63 Issue 28475: Improve error message for random.sample() with k < 0. (Contributed by Francisco Couzo). 2016-11-21 14:34:33 -08:00
Raymond Hettinger
24e4239434 Fix typos 2016-11-13 00:42:56 -05:00
Raymond Hettinger
8567e58ae3 Minor code beautification 2016-11-01 22:23:11 -07:00
Raymond Hettinger
30d00e54dd Issue #18844: Make the various ways for specifing weights produce the same results. 2016-10-29 16:55:36 -07:00