Passar para o conteúdo principal

Função Intervalo

Range Function in Python

O comando range é uma característica crucial em Python que permite aos desenvolvedores definir uma sequência de números dentro de um intervalo especificado. É frequentemente usado em várias aplicações de programação para criar laços e iterar sobre subconjuntos específicos de elementos em uma lista ou tupla. O comando range é uma ferramenta simples, porém poderosa, que pode aprimorar a funcionalidade do seu código Python. Neste artigo, exploraremos as diferentes aplicações e funcionalidades do comando range e como ele pode ser usado para aumentar a eficiência e eficácia dos seus scripts Python.

O que é o range em Python?

A função range em Python gera uma sequência de números dentro de um intervalo dado. É uma função integrada em Python que pode ser usada para criar um objeto range iterável.

A função range aceita três parâmetros: start, stop e step do intervalo. O parâmetro start é o início do intervalo, stop é o fim do intervalo (exclusivo) e step é a diferença entre cada número na sequência.

Exemplo 1: Imprimindo Números de 0 a 9

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

Exemplo 2: Imprimindo Números Pares de 2 a 10

for i in range(2, 11, 2):
    print(i)

No segundo exemplo, o parâmetro start é definido como 2, o parâmetro stop é definido como 11 (exclusivo), e o parâmetro step é definido como 2, o que cria uma sequência de números pares de 2 a 10 (intervalo inclusivo).

Usar a função range pode ser útil em muitos cenários de programação, como percorrer um conjunto de números ou gerar uma lista de elementos.

Como usar range com o Loop for

Esta função pode ser usada com um loop for para iterar através de uma certa faixa de números.

Aqui está um exemplo de uso de range com um loop for para imprimir uma sequência de inteiros:

for num in range(1, 10):
    print(num)

# This will output:
# 
# 1
# 2
# 3
# 4
# 5
# 6
# 7
# 8
# 9

Como Usar range com Números Flutuantes

Você também pode usar range para iterar sobre uma sequência de números flutuantes.

for i in range(0, 10):
    print(i/10.0)

# This will output:
# 
# 0.0
# 0.1
# 0.2
# 0.3
# 0.4
# 0.5
# 0.6
# 0.7
# 0.8
# 0.9

Em resumo, range é uma função útil do Python que pode ser combinada com um laço for para iterar sobre uma sequência de números, incluindo valores flutuantes.

Como Inverter um range

Para inverter um range no Python, você pode fazer uso da função list. Primeiro, crie um range usando a função range, e então passe-o como argumento para a função list para converter range em lista. Após isso, você pode usar a notação de fatia [::-1] para obter o range ao contrário. Alternativamente, você também pode usar a função reversed para obter o range invertido.

Usando a Função list e Notação de Fatia

my_range = range(1, 6)
reversed_range = list(my_range)[::-1]
print(reversed_range)  ### Output

Utilizando a Função reversed

my_range = range(1, 6)
reversed_range = list(reversed(my_range))
print(reversed_range)  ### Output

Em ambos os exemplos, primeiro criamos um intervalo de 1 a 6 usando a função range. Depois, passamos ele como argumento para a função list para convertê-lo em uma lista. Finalmente, usamos ou a notação de fatiamento ou a função reversed para obter o intervalo ao contrário.

Range e Xrange

No Python 2, range() e xrange() são usados para gerar uma sequência de números entre dois valores. No entanto, há uma diferença entre esses dois métodos.

range() retorna uma lista enquanto xrange() retorna um iterador. Isso significa que range() gera toda a sequência e a armazena na memória enquanto xrange() gera os valores conforme necessário. Portanto, xrange() requer menos memória e é mais eficiente para grandes sequências.

Aqui está um exemplo de uso do range():

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

# Output:
# 
# 0
# 1
# 2
# 3
# 4

E aqui está o mesmo exemplo usando xrange() no Python 2:

for i in xrange(5):
    print(i)

# Output:
# 
# 0
# 1
# 2
# 3
# 4

Em geral, xrange() é recomendado para sequências grandes em Python 2, pois é mais eficiente em termos de memória.

Usando random com a função range

O módulo random do Python é uma ferramenta poderosa para gerar números aleatórios. Um dos casos de uso comuns para random é gerar inteiros aleatórios dentro de um intervalo específico. Isso pode ser alcançado usando a função range em conjunto com random.

import random

# Generate a random number in the range 0 to 9
num = random.randint(0, 9)

print(num)

No exemplo acima, nós import o módulo random e usamos a função randint para gerar um inteiro aleatório entre 0 e 9 (inclusive).

import random

# Generate 10 random integers in the range 0 to 9
nums = [random.randint(0, 9) for _ in range(10)]

print(nums)

No exemplo acima, usamos uma compreensão de lista com a função range para gerar uma lista de 10 inteiros aleatórios entre 0 e 9 (inclusive).

Usar random com a função range no Python é uma maneira fácil de gerar inteiros aleatórios dentro de um intervalo específico. Isso pode ser útil em uma variedade de aplicações, desde gerar dados de teste aleatórios até simular jogos ou processos estatísticos.

Contribua connosco!

Não hesite em contribuir para os tutoriais Python no GitHub: crie uma bifurcação, actualize o conteúdo e emita um pedido de retirada.

Profile picture for user AliaksandrSumich
Python engineer, expert in third-party web services integration.
Atualizado: 2024-05-03 22:51
Profile picture for user angarsky
Revisto e aprovado