On Mar 3, 3:40 pm, Mensanator <[EMAIL PROTECTED]> wrote: > Notice anything funny about the "random" choices? > > import sympy > import time > import random > > f = [i for i in sympy.primerange(1000,10000)] > > for i in xrange(10): > f1 = random.choice(f) > print f1, > f2 = random.choice(f) > print f2, > C = f1*f2 > ff = None > ff = sympy.factorint(C) > print ff > > ## 7307 7243 [(7243, 1), (7307, 1)] > ## 4091 6829 [(4091, 1), (6829, 1)] > ## 8563 2677 [(2677, 1), (8563, 1)] > ## 4091 6829 [(4091, 1), (6829, 1)] > ## 8563 2677 [(2677, 1), (8563, 1)] > ## 4091 6829 [(4091, 1), (6829, 1)] > ## 8563 2677 [(2677, 1), (8563, 1)] > ## 4091 6829 [(4091, 1), (6829, 1)] > ## 8563 2677 [(2677, 1), (8563, 1)] > ## 4091 6829 [(4091, 1), (6829, 1)] > > As in, "they're NOT random". > > The random number generator is broken by the sympy.factorint() > function. > > Random.choice() works ok if the factorint() function commented out. > > ## 6089 1811 None > ## 6449 1759 None > ## 9923 4639 None > ## 4013 4889 None > ## 4349 2029 None > ## 6703 8677 None > ## 1879 1867 None > ## 5153 5279 None > ## 2011 4937 None > ## 7253 5507 None > > This makes sympy worse than worthless, as it fucks up other modules.
Does seeding ( random.seed ) random with time fix this? It should. -N -- http://mail.python.org/mailman/listinfo/python-list