Introdução ao módulo random em Python

Você já precisou sortear um nome, gerar uma senha, ou criar números aleatórios em Python? Então precisa conhecer o poderoso módulo random, que vem integrado na biblioteca padrão do Python.


O que é o módulo random

O módulo random fornece funções para gerar números pseudoaleatórios, ou seja, números que parecem aleatórios, mas são calculados por um algoritmo determinístico. Por baixo dos panos, o Python usa o Mersenne Twister, um dos algoritmos mais rápidos e confiáveis para gerar números aleatórios.


Gerando números aleatórios

O random tem várias funções para gerar números em diferentes formatos, por exemplo:

1. random.random()

Gera um número de ponto flutuante entre 0.0 e 1.0.


import random

print(random.random())
        

2. random.uniform(num1, num2)

Gera um número de ponto flutuante entre num1 e num2, incluindo os limites.


import random

print(random.uniform(num1, num2))
        

3. random.randint(num1, num2)

Gera um número inteiro entre num1 e num2, incluindo os limites.


import random

print(random.randint(num1, num2))
        

4. random.randrange(num1, num2, passos)

Gera um número inteiro entre num1 e num2, incluindo os passos, por exemplo, de dois em dois.


import random

print(random.randrange(num1, num2, passos))
        

Selecionando elementos aleatórios

Além de números, o random pode escolher elementos de listas, tuplas e strings.

4. random.choice(seq)

Escolhe um elemento aleatório


import random

frutas = ["maçã", "banana", "uva", "laranja"]
print(random.choice(frutas))
        

5. random.sample(seq, quantidade)

Escolhe x elementos distintos.


import random

numeros = list(range(1, 50))
print(random.sample(numeros, 6))
        

6. random.shuffle(seq)

Embaralha os elementos de uma lista.


import random

letras = ['a', 'b', 'c', 'd', 'e']
random.shuffle(letras)
print(letras)
        

6. random.choices(seq, peso, quantidade)

Seleciona elementos de uma lista de acordo com pesos (passados como floats) e quantidades.


import random

simbolos = ['!', '@', '#', '$', '%', '&']
peso = [0.1, 0.1, 0.1, 0.1, 0.1, 0.9]
print(random.choices(simbolos, peso, 4))
        

Conclusão

O módulo random é uma ferramenta poderosa e versátil que vai muito além de simples sorteios. Com ele, você pode criar simulações, jogos, senhas aleatórias, dados de teste e muito mais. Muito obrigado e até a próxima.

Repositório de exemplo: https://github.com/jcarlossc/random-python

Comentários

Postagens mais visitadas deste blog