homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: random.randint does not include endpoint
Type: behavior Stage:
Components: Library (Lib) Versions: Python 2.7
process
Status: closed Resolution: not a bug
Dependencies: Superseder:
Assigned To: Nosy List: georg.brandl, mark.dickinson, orsenthil, sciencebuggy
Priority: normal Keywords:

Created on 2014年10月21日 15:27 by sciencebuggy, last changed 2022年04月11日 14:58 by admin. This issue is now closed.

Messages (2)
msg229765 - (view) Author: FHuber (sciencebuggy) Date: 2014年10月21日 15:27
Upon inspection, random.randint(a,b) does not include the endpoint b, contrary to documentation, and contrary to the argumentation in Issue7009.
To see this, run e.g.
sum(np.random.randint(0,1,1000))
which will return 0 repeatedly (statistically very unlikely). I tried both on Kubuntu 14.04/python 2.7 and pythoneverwhere.org
Within random.py, randint is (in both 2.7 and 3.5) implemented as 
def randint(self, a, b):
 """Return random integer in range [a, b], including both end points.
 """
 return self.randrange(a, b+1)
which falsely seems to include the endpoint (as randrange excludes the endpoint). However, upon running it does not.
msg229766 - (view) Author: Mark Dickinson (mark.dickinson) * (Python committer) Date: 2014年10月21日 15:42
You seem to be confusing `np.random.randint`, which is a function from NumPy (not part of core Python), with `random.randint` from the standard library. NumPy's np.random.randint does not include the endpoint. Python's does. As far as I can tell, the documentation is correct for both.
Python 2.7.8 (default, Oct 15 2014, 22:04:42) 
[GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import random
>>> sum(random.randint(0, 1) for _ in range(1000))
501
Closing as 'not a bug'.
History
Date User Action Args
2022年04月11日 14:58:09adminsetgithub: 66876
2014年10月21日 15:42:28mark.dickinsonsetstatus: open -> closed

nosy: + mark.dickinson
messages: + msg229766

resolution: not a bug
2014年10月21日 15:27:49sciencebuggycreate

AltStyle によって変換されたページ (->オリジナル) /