random.seed(a, version)
w Pythonie służy do inicjalizacji generatora liczb pseudolosowych (PRNG) .
PRNG to algorytm, który generuje ciąg liczb przybliżających właściwości liczb losowych. Te liczby losowe można odtworzyć za pomocą wartości początkowej . Tak więc, jeśli podasz wartość początkową, PRNG rozpocznie się od dowolnego stanu początkowego przy użyciu ziarna.
Argumentem a
jest wartość początkowa. Jeśli wartością jestNone
, to domyślnie używany jest bieżący czas systemowy.
i version
jest liczbą całkowitą określającą sposób konwersji parametru a na liczbę całkowitą. Wartość domyślna to 2.
import random
random.seed(9001)
random.randint(1, 10) #this gives output of 1
# 1
Jeśli chcesz, aby ta sama liczba losowa została odtworzona, podaj ponownie to samo ziarno
random.seed(9001)
random.randint(1, 10) # this will give the same output of 1
# 1
Jeśli nie podasz ziarna, wygeneruje on inną liczbę, a nie 1, jak poprzednio
random.randint(1, 10) # this gives 7 without providing seed
# 7
Jeśli podasz inne ziarno niż poprzednio , otrzymasz inną liczbę losową
random.seed(9002)
random.randint(1, 10) # this gives you 5 not 1
# 5
Podsumowując, jeśli chcesz, aby ta sama liczba losowa została odtworzona, podaj ziarno. W szczególności to samo ziarno .
random.seed
. Zwykle po prostu wywołujeszrandom.seed()
i używa bieżącego czasu jako wartości początkowej, co oznacza, że za każdym razem, gdy uruchamiasz skrypt, otrzymasz inną sekwencję wartości.