[Python-Dev] a note in random.shuffle.__doc__ ...

Tim Peters tim.peters at gmail.com
Mon Jun 12 05:25:53 CEST 2006


[Terry Jones]
> The code below uses a RNG with period 5, is deterministic, and has one
> initial state. It produces 20 different outcomes.

Well, I'd call the sequence of 20 numbers it produces one outcome.
>From that view, there are at most 5 outcomes it can produce (at most 5
distinct 20-number sequences). In much the same way, there are at
most P distinct infinite sequences this can produce, if the PRNG used
by random.random() has period P:
def belch():
 import random, math
 start = random.random()
 i = 0
 while True:
 i += 1
 yield math.fmod(i * start, 1.0)
The trick is to define "outcome" in such a way that the original claim
is true :-)


More information about the Python-Dev mailing list

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