Intervalo Python ()

O tipo range () retorna uma sequência imutável de números entre o inteiro inicial fornecido e o inteiro final.

range() construtor tem duas formas de definição:

 intervalo (parar) intervalo (iniciar, parar (, passo))

range () Parâmetros

range() leva principalmente três argumentos com o mesmo uso em ambas as definições:

  • start - inteiro a partir do qual a sequência de inteiros deve ser retornada
  • stop - inteiro antes do qual a seqüência de inteiros deve ser retornada.
    O intervalo de inteiros termina em stop - 1.
  • etapa (opcional) - valor inteiro que determina o incremento entre cada inteiro na sequência

Valor de retorno do intervalo ()

range() retorna um objeto de sequência imutável de números, dependendo das definições usadas:

intervalo (parar)

  • Retorna uma sequência de números começando de 0astop - 1
  • Retorna uma sequência vazia se stopfor negativeou 0.

intervalo (iniciar, parar (, passo))

O valor de retorno é calculado pela seguinte fórmula com as restrições fornecidas:

 r (n) = início + etapa * n (para etapa positiva e negativa), onde, n> = 0 e r (n) = 0 e r (n)> parada (para etapa negativa)
  • (Se não step) O padrão da etapa é 1. Retorna uma sequência de números começando starte terminando em stop - 1.
  • (se stepé zero) Gera uma ValueErrorexceção
  • (se stepfor diferente de zero) Verifica se a restrição de valor é atendida e retorna uma sequência de acordo com a fórmula.
    Se não atender à restrição de valor, Sequência vazia é retornada.

Exemplo 1: como o intervalo funciona em Python?

 # empty range print(list(range(0))) # using range(stop) print(list(range(10))) # using range(start, stop) print(list(range(1, 10)))

Resultado

 () (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (1, 2, 3, 4, 5, 6, 7, 8, 9) 

Observação: convertemos o intervalo em uma lista Python, pois range()retorna um objeto do tipo gerador que apenas imprime a saída sob demanda.

No entanto, o objeto de intervalo retornado pelo construtor de intervalo também pode ser acessado por seu índice. Ele oferece suporte a índices positivos e negativos.

Você pode acessar o objeto de intervalo por índice como:

 rangeObject (índice)

Exemplo 2: crie uma lista de números pares entre os números fornecidos usando intervalo ()

 start = 2 stop = 14 step = 2 print(list(range(start, stop, step)))

Resultado

 (2, 4, 6, 8, 10, 12) 

Exemplo 3: Como range () funciona com passo negativo?

 start = 2 stop = -14 step = -2 print(list(range(start, stop, step))) # value constraint not met print(list(range(start, 14, step)))

Resultado

 (2, 0, -2, -4, -6, -8, -10, -12) () 

Artigos interessantes...