summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Peters <tim.peters@gmail.com>2001-11-25 21:12:43 +0000
committerTim Peters <tim.peters@gmail.com>2001-11-25 21:12:43 +0000
commitdc47a89ff19b932c1c794422a5223847b4e64f0e (patch)
tree9aa0fb912a1b0b4c866d518c09bdd9a2b3537ef7
parent652e1917c6f2bcdccb784d9d37950c381948a77c (diff)
downloadcpython-git-dc47a89ff19b932c1c794422a5223847b4e64f0e.tar.gz
SF patch 483059: Avoid use of eval() in random.py, from Finn Bock.
_verify(): Pass in the values of globals insted of eval()ing their names. The use of eval() was obscure and unnecessary, and the patch claimed random.py couldn't be used in Jython applets because of it.
-rw-r--r--Lib/random.py11
1 files changed, 5 insertions, 6 deletions
diff --git a/Lib/random.py b/Lib/random.py
index 1fe0b82353..4259973a4a 100644
--- a/Lib/random.py
+++ b/Lib/random.py
@@ -82,24 +82,23 @@ __all__ = ["Random","seed","random","uniform","randint","choice",
"stdgamma","gauss","betavariate","paretovariate","weibullvariate",
"getstate","setstate","jumpahead","whseed"]
-def _verify(name, expected):
- computed = eval(name)
+def _verify(name, computed, expected):
if abs(computed - expected) > 1e-7:
raise ValueError(
"computed value for %s deviates too much "
"(computed %g, expected %g)" % (name, computed, expected))
NV_MAGICCONST = 4 * _exp(-0.5)/_sqrt(2.0)
-_verify('NV_MAGICCONST', 1.71552776992141)
+_verify('NV_MAGICCONST', NV_MAGICCONST, 1.71552776992141)
TWOPI = 2.0*_pi
-_verify('TWOPI', 6.28318530718)
+_verify('TWOPI', TWOPI, 6.28318530718)
LOG4 = _log(4.0)
-_verify('LOG4', 1.38629436111989)
+_verify('LOG4', LOG4, 1.38629436111989)
SG_MAGICCONST = 1.0 + _log(4.5)
-_verify('SG_MAGICCONST', 2.50407739677627)
+_verify('SG_MAGICCONST', SG_MAGICCONST, 2.50407739677627)
del _verify