From 14a6e3d5e8f91816f71e4bab976c61de3870a272 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Wed, 14 Sep 1994 13:33:57 +0000 Subject: [PATCH] * Lib/whrandom.py: if seed is (0,0,0), initialize from current time; default seed's arguments to (0,0,0) --- Lib/whrandom.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Lib/whrandom.py b/Lib/whrandom.py index 7317b443f8b..8ed39c923cd 100644 --- a/Lib/whrandom.py +++ b/Lib/whrandom.py @@ -35,24 +35,24 @@ class whrandom: # Without arguments, initialize from current time. # With arguments (x, y, z), initialize from them. # - def __init__(self, x = None, y = None, z = None): - if x is None: + def __init__(self, x = 0, y = 0, z = 0): + self.seed(x, y, z) + # + # Set the seed from (x, y, z). + # These must be integers in the range [0, 256). + # + def seed(self, x = 0, y = 0, z = 0): + if not type(x) == type(y) == type(z) == type(0): + raise TypeError, 'seeds must be integers' + if not 0 <= x < 256 and 0 <= y < 256 and 0 <= z < 256: + raise ValueError, 'seeds must be in range(0, 256)' + if 0 == x == y == z: # Initialize from current time import time t = int(time.time() % 0x80000000) t, x = divmod(t, 256) t, y = divmod(t, 256) t, z = divmod(t, 256) - self.seed(x, y, z) - # - # Set the seed from (x, y, z). - # These must be integers in the range [0, 256). - # - def seed(self, x, y, z): - if not type(x) == type(y) == type(z) == type(0): - raise TypeError, 'seeds must be integers' - if not 0 <= x < 256 and 0 <= y < 256 and 0 <= z < 256: - raise ValueError, 'seeds must be in range(0, 256)' self._seed = (x, y, z) # # Get the next random number in the range [0.0, 1.0).