5.4 whrandom -- Pseudo-random number generator

This module implements a Wichmann-Hill pseudo-random number generator class that is also named whrandom. Instances of the whrandom class conform to the Random Number Generator interface described in section 5.3.1. They also offer the following method, specific to the Wichmann-Hill algorithm:

seed ([x, y, z])
Initializes the random number generator from the integers x, y and z. When the module is first imported, the random number is initialized using values derived from the current time. If x, y, and z are either omitted or 0, the seed will be computed from the current system time. If one or two of the parameters are 0, but not all three, the zero values are replaced by ones. This causes some apparently different seeds to be equal, with the corresponding result on the pseudo-random series produced by the generator.

When imported, the whrandom module also creates an instance of the whrandom class, and makes the methods of that instance available at the module level. Therefore one can write either N = whrandom.random() or:

generator = whrandom.whrandom()
N = generator.random()

Note that using separate instances of the generator leads to independent sequences of pseudo-random numbers.

See Also:

Module random:
Generators for various random distributions and documentation for the Random Number Generator interface.

Wichmann, B. A. & Hill, I. D., ``Algorithm AS 183: An efficient and portable pseudo-random number generator'', Applied Statistics 31 (1982) 188-190.


Send comments on this document to python-docs@python.org.