Уведомления

Группа в Telegram: @pythonsu

#1 Июль 23, 2012 12:32:47

erjemin
Зарегистрирован: 2012-07-11
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

Повторное воспроизведение случайных чисел.

День добрый,

я совсем-совсем новичок, и потому может тупой вопрос, но:

Существует-ли встроенная (или внешняя) функция генератора псевдослучайных чисел? Т.е. надо чтобы при реактивации функции с определенных параметром она выдавала гарантированно такую-же последовательность… Наверняка такое быть должно, но не знаю как это научно называется..

Заранее спасибо.

Офлайн

#2 Июль 23, 2012 12:48:24

EBFE
Зарегистрирован: 2012-07-03
Сообщения: 99
Репутация: +  20  -
Профиль   Отправить e-mail  

Повторное воспроизведение случайных чисел.

random.seed с параметром

>>> import random
>>> random.seed(0)
>>> random.randrange(1,10)
8
>>> random.randrange(1,10)
7
>>> random.seed()  # If omitted or None, current system time is used
>>> random.randrange(1,10)
6
>>> random.randrange(1,10)
4
>>> random.seed(0)
>>> random.randrange(1,10)
8
>>> random.randrange(1,10)
7
>>> 

Офлайн

#3 Июль 23, 2012 12:55:31

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Повторное воспроизведение случайных чисел.

erjemin
Т.е. надо чтобы при реактивации функции с определенных параметром она выдавала гарантированно такую-же последовательность…
А почему не хранить результаты предыдущих вычислений в списке?



Офлайн

#4 Июль 23, 2012 13:41:55

sp3
От:
Зарегистрирован: 2010-01-12
Сообщения: 405
Репутация: +  18  -
Профиль   Отправить e-mail  

Повторное воспроизведение случайных чисел.

мжт что типа MD5 нужно?
http://docs.python.org/library/hashlib.html



Офлайн

#5 Июль 23, 2012 13:48:21

ziro
От:
Зарегистрирован: 2009-08-13
Сообщения: 225
Репутация: +  8  -
Профиль   Отправить e-mail  

Повторное воспроизведение случайных чисел.

А почему не хранить результаты предыдущих вычислений в списке?

Потому, что если генератор используется для каких-нить исследований методом Монте-Карло, например в радиобиологии, то там последовательность может включать и сотни тысяч случайных чисел. В общем, хранить это все может быть накладно по памяти, а главное, совершенно бессмысленно, так как она легко воспроизводится. Проще, действительно, seed с параметром.



Офлайн

#6 Июль 23, 2012 15:11:30

erjemin
Зарегистрирован: 2012-07-11
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

Повторное воспроизведение случайных чисел.

Спасибо за random.seed
Вроде то что надо.

Мне нужно генерить для каждой страницы сайта хитрый граф абстрактной релевантно-связной навигации (сам придумал, хочу испытать как это сработает или нет). Граф генерируются частично по стационарным данным самой страницы, но с элементами случайности (для красоты, т.к. генерация по стационарным данным скучны и внешне непривлекательны). Граф довольно тяжел и страниц реально дофига. Но при этом надо чтобы граф для каждой страницы не каждый раз был “неожиданно непохожим” от момента прошлой посещения. Кроме того сам граф иногда надо перегенерить, т.к. данные релевантности плавно дрейфтуют в связи с накапливанием данных. Так что их проще и быстрее каждый раз строит заново чем хранить в кеше или файлах.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version