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.