Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Tem como alterar o valor da função (range) no meio do processo?

Vamos a explicações

Estou cursando introdução ao Python, e lá usamos a função (range) para marcar as rodadas do nosso jogo, só que ao realizar uma entrada invalida, o nosso usuário perde uma de suas tentativas, gostaria de fazer com que ele não perdesse uma tentativa ao fazer uma entrada invalida, apenas que fosse alertado sobre este fato e retornasse ao jogo como se nada tivesse acontecido.

Na função (range), o primeiro argumento é o valor (start) que inicia o contador e o incrementa a cada ciclo. Tem com alterar esse contador no meio do processo?

Como não consegui fazer isso, substitui o range por while e deu certo.

1 resposta
solução!

Olá, tudo bem com você?

Depois que a interação do range() é iniciada não é possível alterarmos em tempo de execução o valor inicial ou de parada informado para a função range() . Para avaliarmos a entrada do usuário, fazer o uso do while será uma boa alternativa para que seja possível.

Durante a leitura do código será disponibilizado um intervalo de valores que vão poder ser acessados quando necessário, como feito com uso da cláusula for para acessar os valores no intervalo definido. Os valores de início e final serão fixos durante a execução do laço for.

Exemplo

intervalo_final = 6
intervalo_inicial = 0

for numero in range(intervalo_inicial, intervalo_final):
    intervalo_final = 10
    print(numero)

Resultado

0
1
2
3
4
5

Note que no código anterior é realizada a declaração de um novo valor para a variável intervalo_final, mas o laço percorre até o intervalo declarado inicialmente.

Para aprimorar ainda mais o seu aprendizado sobre a função range() recomendo a leitura do seguinte artigo, que apresenta outros usos da função com exemplos e explicação detalhada.

O artigo acima está em inglês, caso tenha dificuldades com o idioma, recomendo o uso do tradutor do navegador.

Fico à disposição em caso de dúvidas.

Abraços e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software