Gerar inteiros aleatórios no intervalo em Python
-
Use a função
random.randint()
para gerar números inteiros aleatórios entre um intervalo específico em Python -
Use a função
random.randrange()
para gerar números inteiros aleatórios entre um intervalo específico em Python -
Use a função
random.sample()
para gerar números inteiros aleatórios entre um intervalo específico em Python -
Use o módulo
NumPy
para gerar números inteiros aleatórios entre um intervalo específico em Python
Python é uma ferramenta muito útil para Análise de Dados. Quando lidamos com cenários do mundo real, temos que gerar valores aleatórios para simular situações e trabalhar nelas.
Python possui os módulos random
e NumPy
disponíveis, que possuem métodos eficientes para trabalhar e gerar números aleatórios com facilidade.
Neste tutorial, geraremos alguns inteiros aleatórios entre um intervalo específico em Python.
Use a função random.randint()
para gerar números inteiros aleatórios entre um intervalo específico em Python
A função randint()
é usada para gerar inteiros aleatórios entre um intervalo especificado. As posições inicial e final são passadas para a função como parâmetros.
Por exemplo,
import random
x = random.randint(0, 10)
print(x)
Resultado:
8
Para gerar uma lista de números aleatórios com esta função, podemos usar o método de compreensão de lista com o loop for
conforme mostrado abaixo:
import random
x = [random.randint(0, 9) for p in range(0, 10)]
print(x)
Resultado:
[1, 6, 6, 5, 8, 8, 5, 5, 8, 4]
Observe que este método só aceita valores inteiros.
Use a função random.randrange()
para gerar números inteiros aleatórios entre um intervalo específico em Python
A função randrange()
também retorna um número aleatório dentro de um intervalo e aceita apenas valores inteiros, mas aqui temos a opção de especificar um parâmetro muito útil chamado step
. O parâmetro step
nos permite encontrar um número aleatório que é divisível por um número específico. Por padrão, este parâmetro é 1.
Por exemplo,
import random
x = random.randrange(0, 10, 2)
print(x)
Resultado:
4
Observe que a saída é divisível por 2. Usando o mesmo método de compreensão de lista, podemos gerar uma lista de números aleatórios com esta função, conforme mostrado abaixo.
import random
x = [random.randrange(0, 10, 2) for p in range(0, 10)]
print(x)
Resultado:
[8, 0, 6, 2, 0, 6, 8, 6, 0, 4]
Use a função random.sample()
para gerar números inteiros aleatórios entre um intervalo específico em Python
Com esta função, podemos especificar o intervalo e o número total de números aleatórios que queremos gerar. Também garante que nenhum valor duplicado esteja presente. O exemplo a seguir mostra como usar esta função.
import random
x = random.sample(range(10), 5)
print(x)
Resultado:
[7, 8, 5, 9, 6]
Use o módulo NumPy
para gerar números inteiros aleatórios entre um intervalo específico em Python
O módulo NumPy
também possui três funções disponíveis para realizar esta tarefa e gerar o número necessário de inteiros aleatórios e armazená-los em um array numpy.
Essas funções são numpy.random.randint()
, numpy.random.choice()
e numpy.random.uniform()
. O código a seguir mostra como usar essas funções.
Por exemplo,
import numpy as np
x1 = np.random.randint(low=0, high=10, size=(5,))
print(x1)
x2 = np.random.uniform(low=0, high=10, size=(5,)).astype(int)
print(x2)
x3 = np.random.choice(a=10, size=5)
print(x3)
Resultado:
[3 2 2 2 8]
[8 7 9 2 9]
[0 7 4 1 4]
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn