Article image
Reginaldo Cavalcanti
Reginaldo Cavalcanti10/01/2024 11:54
Compartilhe

Usando a função range em Python

  • #Python

Já se deparou com alguma situação em que você precisa criar uma sequência de números ou listas mas acha trabalhoso demais ter que ficar digitando e alongando o seu código?

Existe uma forma muito mais simples para isso, utilizando uma função que realiza esse trabalho por você e ela se chama range().

 

A função range() é nativa da linguagem Python e é utilizada para gerar uma sequência numérica, com incremento opcional ou diferença entre valores, dentro de um intervalo determinado. Vejamos como como isso funciona:

 

Sintaxe básica

range(start, stop, step)

 

onde:

  • start é a posição de início da sequência (por padrão é 0);
  • stop é o limite (exclusivo) da sequência;
  • step é o valor de incremento da sequência (por padrão é 1).

 

Utilizando range() em uma lista

Como mencionado no início deste artigo, podemos utilizar a função range() para a criação de uma lista:

x = list(range(1, 10, 1))
print(x)

 

No exemplo acima foi criado uma lista com uma sequencia de números onde 1 foi o início da sequência, 10 é o limite e 1 o valor de incremento, obtendo a seguinte saída:

[1, 2, 3, 4, 5, 6, 7, 8, 9]

 

É importante salientar que a função range() nunca inclui o número final nos resultados. Neste exemplo, caso seja necessário que o número "10" esteja no resultado, deve-se alterar o 10 pelo 11 dentro do range():

x = list(range(1, 11, 1))
print(x)

 

O resultado seria:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

 

Utilizando o range() em loops

Uma das formas mais vistas na utilização do range() é com estruturas de loop, como o for:

for i in range(10):
print(i)

 

Acima, temos um range(10) que gera uma sequência iniciando em 0 e indo até 9, como ilustrado abaixo:

0
1
2
3
4
5
6
7
8
9

 

Personalizando a sequência

O range() possui uma flexibilidade que permite personalizar a sequência gerada conforme necessário:

for i in range(1, 10, 2):
print(i)

 

Neste exemplo, o range() cria uma sequência iniciando em 1, indo até 9, com incremento de 2, como mostrado abaixo:

1
3
5
7
9

 

Aplicações avançadas

A função range() permite aplicações mais avançadas para melhorar a estrutura do seu código. Abaixo seguem alguns exemplos:

 

1) É possível e muito útil usar a função range() para iterar sobre índices de listas ou outros iteráveis:

my_list = [10, 20, 30, 40, 50]
for index in range(len(my_list)):
print(f"Index {index}: {my_list[index]}")

 

onde:

  • 'range(len(my_list))' cria uma sequência de índices equivalentes aos índices da lista 'my_list';
  • O loop 'for' itera sobre a sequência dos índices;
  • 'my_list[index]' acessa cada elemento da lista usando o índice.
Index 0: 10
Index 1: 20
Index 2: 30
Index 3: 40
Index 4: 50

 

2) Gerando sequências com ponto flutuante:

for i in range(0, 5):
print(i / 2)

 

onde:

  • 'range(0 , 5)' gera uma sequência de 0 a 4;
  • o loop 'for' itera sobre essa sequência;
  • o 'print(i / 2)' exibe cada valor divido por 2, gerando uma sequência de números de ponto flutuante de 0.0 a 2.0
0.0
0.5
1.0
1.5
2.0

 

3) Usando range() com outras estruturas de controle:

for i in range(1, 6):

if i % 2 == 0:
  print(f"{i} é par")
else:
  print(f"{i} é ímpar")

 

onde:

  • 'range(1, 6)' gera uma sequência de 1 a 5;
  • o loop 'for' itera sobre essa sequência;
  • o 'if i % 2 == 0' verifica se i é par;
  • O 'print' exibe a classificação de cada número como par ou ímpar.
1 é ímpar
2 é par
3 é ímpar
4 é par
5 é ímpar

 

Conclusão

A função range() é uma ferramenta essencial em Python, proporcionando uma abordagem eficaz para a geração de sequências numéricas, seja para criação de listas, controle de loops ou iteração sobre índices, deixando seu código mais conciso e legível.

 

Para saber mais segue o link da documentação completa: https://docs.python.org/pt-br/3/tutorial/controlflow.html#the-range-function

Compartilhe
Comentários (0)