Como gerar números aleatórios em Python (módulo aleatório)
Aprenda como gerar números aleatórios em Python. Compare a geração de randrange, randint e float uniforme com controle de semeadura.
Visão geral
A geração de números aleatórios é um requisito fundamental na programação de jogos, na seleção de itens aleatórios de conjuntos de dados, na escrita de aplicativos de criptografia e na realização de simulações estatísticas. Python fornece uma biblioteca integrada dedicada chamada `random` para lidar com a geração de números pseudo-aleatórios.
Se você precisar de um número inteiro aleatório dentro de um intervalo específico, a função `random.randint(a, b)` é a ferramenta mais comum, retornando um número inteiro aleatório onde ambos os pontos de extremidade são inclusivos. Alternativamente, `random.random()` gera um número de ponto flutuante entre 0,0 (inclusivo) e 1,0 (exclusivo), que pode ser escalado matematicamente para se ajustar aos limites personalizados.
Para tornar simulações e testes repetíveis, você pode usar a função `random.seed()`. Fornecer um número inteiro inicial garante que a sequência de números gerados será idêntica sempre que o código for executado. Para operações criptográficas que exigem alta segurança (como geração de tokens), geradores pseudo-aleatórios padrão devem ser evitados em favor do módulo `segredos`.
Saída de código e execução
Este script demonstra a geração de números inteiros aleatórios, pontos flutuantes e a seleção de elementos com o módulo aleatório.
import random
# Setting a seed for deterministic output in this example
random.seed(42)
# 1. Generate a random integer between 1 and 10 (inclusive)
random_int = random.randint(1, 10)
print("Random Integer (1-10):", random_int)
# 2. Generate a random float between 0.0 and 1.0
random_float = random.random()
print("Random Float (0-1):", round(random_float, 4))
# 3. Select a random element from a list
fruits = ["apple", "banana", "cherry"]
random_choice = random.choice(fruits)
print("Random Choice:", random_choice)Random Integer (1-10): 2
Random Float (0-1): 0.025
Random Choice: bananaImplementação passo a passo
- Importe o módulo aleatório no início do seu script.
- Use random.randint(min, max) para gerar um número inteiro aleatório onde ambos os pontos de extremidade são inclusivos.
- Use random.random() para gerar um float aleatório entre 0,0 e 1,0.
Perguntas frequentes
Como faço para gerar um float aleatório dentro de um intervalo personalizado?
Use random.uniform(a, b) para obter um número aleatório de ponto flutuante entre a e b.
O módulo aleatório é seguro para uso criptográfico?
Não, o módulo aleatório é pseudo-aleatório e não deve ser usado para fins sensíveis à segurança. Use o módulo de segredos.
Tópicos Relacionados
Aprenda como encontrar o comprimento de uma lista em Python usando a função len(). Entenda a complexidade do tempo O(1) e as contagens de verificação.
Como usar Enumerate em PythonAprenda como usar a função enumerate() em Python. Obtenha índice e valor ao percorrer listas com exemplos limpos.
Recursos Python recomendados
Expanda seu conhecimento com tutoriais interativos relacionados, folhas de dicas e comparações de código.
Loops Python
Aprenda como usar loops Python para iterar dados. Domine as práticas recomendadas para loops for, while loops, break, continue e loop com exemplos interativos.
Folha de dicas dos métodos de string Python
Um guia de referência completo para manipulação de strings em Python. Domine a formatação, pesquisa, divisão, substituição e verificação de propriedades de string.
Python vs JavaScript: qual linguagem de programação é a melhor?
Uma comparação abrangente entre Python e JavaScript. Explore diferenças de sintaxe, desempenho, casos de uso (backend versus frontend) e exemplos de codificação.