Será que utilizando a função random.seed() não seria possível obter resultados diferentes? O que eu utilizei uma vez para gerar números randômicos foi utilizar random.seed(random.random()), e depois chamar a função random.random()*100 pra preencher a variável que deveria guardar meu valor aleatório. Refiz este teste, e rodei o script várias vezes seguidas para ver se tinha alguma repetição de valores, mas me parece que o resultado foi bem aleatório.
Sim, alterando o seed é possível obter resultados diferentes, na verdade é o seed que define os resultados obtidos pelo random. O exemplo seguinte sempre retorna os mesmos resultados, independente de quantas fezes for executado:
Na verdade o random não é aleatório, e sim randômico, uma função com resultados que parecem ser aleatórios, mas sabendo a semente (seed) é possível obter a mesma sequência de valores. Então o que normalmente é feito é usar a hora do computador, assim cada execução teria uma seed diferente, tendo resultados diferentes, mas se a hora do dispositivo for conhecida, isso pode levar a fanhas de segurança. Por isso alguns programas pedem para ficar movendo o mouse enquanto eles geram as chaves de criptografia, usando esses movimentos para gerar os valores que são muito mais difíceis de prever do que uma sequência randômica.
Mas alterando o seed, embora altere o resultado do random, não seria possível manipular o resultado de acordo com o usuário passado para a função.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Será que utilizando a função random.seed() não seria possível obter resultados diferentes? O que eu utilizei uma vez para gerar números randômicos foi utilizar random.seed(random.random()), e depois chamar a função random.random()*100 pra preencher a variável que deveria guardar meu valor aleatório. Refiz este teste, e rodei o script várias vezes seguidas para ver se tinha alguma repetição de valores, mas me parece que o resultado foi bem aleatório.
Sim, alterando o
seed
é possível obter resultados diferentes, na verdade é oseed
que define os resultados obtidos pelorandom
. O exemplo seguinte sempre retorna os mesmos resultados, independente de quantas fezes for executado:Na verdade o
random
não é aleatório, e sim randômico, uma função com resultados que parecem ser aleatórios, mas sabendo a semente (seed
) é possível obter a mesma sequência de valores. Então o que normalmente é feito é usar a hora do computador, assim cada execução teria umaseed
diferente, tendo resultados diferentes, mas se a hora do dispositivo for conhecida, isso pode levar a fanhas de segurança. Por isso alguns programas pedem para ficar movendo o mouse enquanto eles geram as chaves de criptografia, usando esses movimentos para gerar os valores que são muito mais difíceis de prever do que uma sequência randômica.Mas alterando o
seed
, embora altere o resultado dorandom
, não seria possível manipular o resultado de acordo com o usuário passado para a função.