Andrew Kuchling writes:
First, the RNG in whrandom.py sucks if you let it seed itself from the time. The problem is the line: t = int((t&0xffffff) | (t>>24)) Since it ORs the two parts together, the resulting value has mostly ON bits. Change | to ^, and you don't lose any randomness.
This commit is contained in:
parent
1aedbd8b0a
commit
358473c1a2
|
@ -50,7 +50,7 @@ class whrandom:
|
||||||
# Initialize from current time
|
# Initialize from current time
|
||||||
import time
|
import time
|
||||||
t = long(time.time() * 256)
|
t = long(time.time() * 256)
|
||||||
t = int((t&0xffffff) | (t>>24))
|
t = int((t&0xffffff) ^ (t>>24))
|
||||||
t, x = divmod(t, 256)
|
t, x = divmod(t, 256)
|
||||||
t, y = divmod(t, 256)
|
t, y = divmod(t, 256)
|
||||||
t, z = divmod(t, 256)
|
t, z = divmod(t, 256)
|
||||||
|
|
Loading…
Reference in New Issue