Função Python randint()

A função randint() em Python é uma opção simples e rápida para se gerar números inteiros aleatórios dentro de um intervalo especificado. Ela pode ser útil em diversas aplicações, como em jogos, testes, simulações e outras situações que pedem pela geração de números aleatórios de forma controlada.

Quando utilizar a função randint em Python?

A função randint() faz parte do módulo random de Python. Ela serve para gerar números inteiros aleatório dentro de um intervalo. Diferentemente de funções semelhantes de outras linguagens de programação, randint() é capaz de determinar o último número do intervalo especificado. Isso quer dizer que tanto o valor inicial quanto o valor final desse intervalo sempre estarão entre os resultados possíveis. Na maioria das vezes, funções randint() são aplicadas a códigos que devem se basear em valores randômicos.

Como alternativas a randint(), o módulo random disponibiliza outras funções capazes de gerar números aleatórios, cada uma a seu modo. Por exemplo, random.randrange(start, stop[, step]), similar à função randint(), diferencia-se desta por adicionar um passo opcional à sequência de números. Outro exemplo: a função random.randint() gera apenas números inteiros, já a função random.uniform(a, b) retorna um número de vírgula flutuante aleatório, dentro do intervalo indicado. Existe, ainda, o pacote numpy, que oferece funções mais sofisticadas para a geração de números aleatórios. Estas servem, principalmente, a matrizes e operações matemáticas complexas.

Sintaxe da função randint

A estrutura da função randint(), do módulo random de Python, é relativamente simples e exige somente dois parâmetros: o valor inicial e o valor final do intervalo no qual a geração do número aleatório deve ocorrer.

import random
random_number = random.randint(start, end)
python
  • import random: Importa o módulo random, que contém a função randint(). Essa instrução é essencial para a aplicação da função randint().
  • random_number: Variável que armazena o resultado da função randint(). Essa variável exibe o número inteiro aleatório gerado.
  • start: Trata-se do valor inicial do intervalo em que será gerado o número aleatório — esse valor será incluído entre os resultados possíveis.
  • end: Valor final do intervalo em que será gerado o número aleatório — esse valor também estará incluído nos resultados possíveis.

Elaboramos, abaixo, um código que apresenta um exemplo de aplicação da função randint():

import random
random_number = random.randint(1, 100)
print(random_number)
python

Esse exemplo comanda a geração de um número inteiro aleatório entre 1 e 100. O intervalo deve abranger os valores-limite (start e end) especificados, ou seja, os números 1 e 100 também devem ser incluídos entre os valores possíveis.

Aplicações e usos da função randint

Você pode utilizar a função randint() em Python de forma flexível, para a geração de números aleatórios pela sua aplicação. No entanto, para que a função possa ser aplicada corretamente, você precisará se certificar de que o seu código esteja limpo e correto, o que evitará a ocorrência de mensagens de erro.

Solicitações múltiplas de randint

Chamando a função randint() múltiplas vezes, você será capaz de gerar vários números inteiros aleatórios em diferentes partes do seu código. Cada chamada de randint() gerará um novo número adequado aos parâmetros especificados. Observe:

import random
random_number1 = random.randint(1, 10)
random_number2 = random.randint(1, 10)
random_number3 = random.randint(1, 10)
# Print the generated random integers
print("Random integer 1:", random_number1)
print("Random integer 2:", random_number2)
print("Random integer 3:", random_number3)
python

No exemplo de código acima, chamamos a função randint() três vezes, em momentos distintos, para gerar três números aleatórios diferentes, entre 1 e 10. Cada variável random_numberX armazena o respectivo resultado de uma chamada de randint(), valor que pode ser exibido ou reutilizado, conforme as necessidades da aplicação.

ValueError na função randint

Durante a aplicação da função randint(), um ValueError pode vir a ocorrer. Ele é exibido quando argumentos (parâmetros) não correspondem ao que é suportado, por exemplo, se o valor inicial for maior que o valor final, ou se algum dos argumentos não se tratar de um número inteiro. Justamente por isso, é importante que você se certifique de que os seus parâmetros estejam corretos: para evitar mensagens ValueError e conseguir executar a função sem problemas.

# Correct use of randint()
random_number = random.randint(1, 10)
print("Random integer between 1 and 10:", random_number)
# Potential ValueError if 'end' is less than 'start'
random_number_error = random.randint(10, 5)  # This will raise a ValueError
print("This won't be printed as an error occurs.")
python

Nesse exemplo, primeiramente usamos random.randint(1, 10) para gerar um número inteiro aleatório entre 1 a 10. Em seguida, tentamos usar a função random.randint(10, 5), que resultou em um ValueError. Isso ocorreu porque, nesse caso, o valor inicial é superior ao valor final.

TypeError na função randint

Um TypeError sinaliza que uma operação ou função foi aplicada a um tipo incompatível de dado. Ele pode ser exibido durante a aplicação da função randint() do módulo random, quando algum argumento não corresponder ao tipo de dado suportado, como ilustra o exemplo abaixo:

import random
random_number_error = random.randint("1", "10")
python

Nesse código, tentamos fazer uso da função randint() com uma string Python como argumento. Ou seja, em vez de números inteiros, os argumentos usados tratam-se de strings ("1" e "10"), o que gera um TypeError. A função randint() só suporta números inteiros como argumentos na definição do intervalo de números aleatórios.

Hospedagem web com consultor pessoal

Rápido e escalável, confie na hospedagem da IONOS, que inclui domínio grátis no primeiro ano e endereço de e-mail!

  • Domínio
  • SSL Wildcard
  • Suporte 24 horas
Este artigo foi útil?
Para melhorar a sua experiência, este site usa cookies. Ao acessar o nosso site, você concorda com nosso uso de cookies. Mais informações
Page top