Gerar um número aleatório sempre foi uma aplicação importante e com muitas utilidades na vida diária. Python oferece uma função que pode gerar números aleatórios de um intervalo especificado e também permitir a inclusão de salas para etapas, chamada randrange() no módulo aleatório . Mais sobre esta função é discutido neste artigo.
 

Sintaxe: 
random.randrange (start (opt), stop, step (opt)) 
Parâmetros: 
start (opt): A   consideração do número para a geração começa a partir disso,
o valor padrão é 0. Este parâmetro é opcional.
parar: Números menores do que isso são gerados. Este parâmetro é obrigatório.
step (opt): Step point of range, não será incluído. Isso é opcional.
O valor padrão é 1.
Valor de retorno :
Esta função gerou os números na etapa de salto início-parada da sequência.
Exceções:
Gera ValueError se parar <= início e o número não for integral .

 

 
import random
 
print ("Random number from 0-100 is : ",end="")
print (random.randrange(100))
 
print ("Random number from 50-100 is : ",end="")
print (random.randrange(50,100))
 
print ("Random number from 50-100 skip 5 is : ",end="")
print (random.randrange(50,100,5))

Resultado: 
 

O número aleatório de 0-100 é: 26
O número aleatório de 50-100 é: 58
O número aleatório de 50-100, salto 5, é: 90

 

Exceções

1. Erro de valor - valor de ponto flutuante 
 



 
import random
 
print ("Random number from 14.5-100 is : ",end="")
print (random.randrange(14.5,100))

Resultado : 
 

O número aleatório de 14,5-100 é:

Erro de tempo de execução: 
 

Traceback (última chamada mais recente):
  Arquivo "/home/5e40f42505a6926d0c75a09bec1279d9.py", linha 9, em
    imprimir (random.randrange (14.5,100))
  Arquivo "/usr/lib/python3.5/random.py", linha 182, em randrange
    raise ValueError ("arg 1 não inteiro para randrange()")
ValueError: arg 1 não inteiro para randrange()

2. Erro de valor - iniciar> = parar 
 

 
import random
 
print ("Random number from 500-100 is : ",end="")
print (random.randrange(500,100))

Resultado : 
 

O número aleatório de 500-100 é:

Erro de tempo de execução: 
 

Traceback (última chamada mais recente):
  Arquivo "/home/ea327cf3f1dd801a66a185d101c5cb13.py", linha 9, em
    imprimir (random.randrange (500,100))
  Arquivo "/usr/lib/python3.5/random.py", linha 196, em randrange
    aumentar ValueError ("intervalo vazio para randrange() (% d,% d,% d)"% (istart, istop, width))
ValueError: intervalo vazio para randrange() (500,100, -400)

 

Aplicação prática

Gerar números aleatórios sempre foi uma aplicação importante e tem sido usada em muitos jogos de cassino, para jogos de azar em muitos jogos infantis como ludo, etc. que usam o conceito de Dados. Um jogo curto, sobre quem chega a 100 primeiras vitórias, foi descrito no código abaixo. Cada jogador tem direito a um dado de 1-10 números, ou seja, em cada jogada 1-10 podem ser obtidos. .
 

 
import random
 
sum = 0
sum1 = 0
count = 0
flag = 0
 
while(1):
     
    
    r1 = random.randrange(1,10)
    r2 = random.randrange(1,10)
     
    
    sum = sum + r1
    sum1 = sum1 + r2
    count = count+1
     
    print ("Total score of Player 1 after turn %d is :  %d " % (count,sum))
     
    
    if(sum>=100):
      flag=1
      break
    print ("Total score of Player 2 after turn %d is :  %d" % (count,sum1))
     
    
    if(sum1>=100):
      flag=2
      break
 
if(flag==1):
   print("\nPlayer 1 wins the game")
else :
   print("\nPlayer 2 wins the game")   
Resultado
A pontuação total do jogador 1 após o turno 1 é: 8
A pontuação total do jogador 2 após o turno 1 é: 4
A pontuação total do jogador 1 após o turno 2 é: 13
A pontuação total do jogador 2 após o turno 2 é: 8
A pontuação total do jogador 1 após o turno 3 é: 22
A pontuação total do jogador 2 após o turno 3 é: 16
A pontuação total do jogador 1 após o turno 4 é: 28
A pontuação total do jogador 2 após o turno 4 é: 22
A pontuação total do jogador 1 após o turno 5 é: 33
A pontuação total do jogador 2 após o turno 5 é: 27
A pontuação total do jogador 1 após o turno 6 é: 35
A pontuação total do jogador 2 após o turno 6 é: 33
A pontuação total do jogador 1 após o turno 7 é: 36
A pontuação total do jogador 2 após o turno 7 é: 42
A pontuação total do jogador 1 após o turno 8 é: 38
A pontuação total do jogador 2 após o turno 8 é: 50
A pontuação total do jogador 1 após o turno 9 é: 45
A pontuação total do jogador 2 após o turno 9 é: 55
A pontuação total do jogador 1 após o turno 10 é: 48
A pontuação total do jogador 2 após o turno 10 é: 61
A pontuação total do jogador 1 após o turno 11 é: 54
A pontuação total do jogador 2 após o turno 11 é: 64
A pontuação total do jogador 1 após o turno 12 é: 57
A pontuação total do jogador 2 após o turno 12 é: 70
A pontuação total do jogador 1 após o turno 13 é: 66
A pontuação total do jogador 2 após o turno 13 é: 73
A pontuação total do jogador 1 após o turno 14 é: 72
A pontuação total do jogador 2 após o turno 14 é: 75
A pontuação total do jogador 1 após o turno 15 é: 79
A pontuação total do jogador 2 após o turno 15 é: 76
A pontuação total do jogador 1 após o turno 16 é: 81
A pontuação total do jogador 2 após o turno 16 é: 77
A pontuação total do jogador 1 após o turno 17 é: 89
A pontuação total do jogador 2 após o turno 17 é: 81
A pontuação total do jogador 1 após o turno 18 é: 95
A pontuação total do jogador 2 após o turno 18 é: 90
A pontuação total do jogador 1 após o turno 19 é: 97
A pontuação total do jogador 2 após o turno 19 é: 99
A pontuação total do jogador 1 após o turno 20 é: 102
O jogador 1 ganha o jogo

Este artigo é uma contribuição de Manjeet Singh . Se você gosta de GeeksforGeeks e gostaria de contribuir, você também pode escrever um artigo usando contribute.geeksforgeeks.org ou enviar o seu artigo para contribute@geeksforgeeks.org. Veja o seu artigo que aparece na página principal do GeeksforGeeks e ajude outros Geeks.
Escreva comentários se encontrar algo incorreto ou se quiser compartilhar mais informações sobre o tópico discutido acima.