Pular para o conteúdo principal

Um guia para iniciantes em Python para loops: Dominando para i no intervalo

No campo da programação em Python, dominar os loops é fundamental. Este tutorial esclarece o loop Python for i in range, uma construção fundamental em Python.
Actualizado 16 de jan. de 2025  · 5 min de leitura

No campo da programação em Python, dominar os loops é fundamental. Este tutorial esclarece o loop Python for i in range, uma construção fundamental em Python que simplifica tarefas repetitivas. Embarcaremos em uma jornada para entender sua sintaxe, versatilidade e aplicações práticas.

A essência do for Loops em Python

Um loop for em Python é uma estrutura de controle usada para iterar sobre uma sequência (como uma lista, uma tupla, um dicionário ou uma string). A beleza do loop for do Python está em sua capacidade de iterar diretamente sobre os itens de uma sequência de forma clara e concisa.

Sintaxe do for Loop

for item in sequence:
    # perform actions

Aqui, o item representa cada elemento da sequência, e o loop executa o bloco de código para cada elemento.

Investigando a função range() do Python

A função range() do Python é essencial para gerar uma sequência de números, oferecendo maior controle e flexibilidade em loops.

A flexibilidade de range()

Uso de um único argumento

  • Gera números de 0 a n-1.
  • Exemplo: range(5) produz 0, 1, 2, 3, 4.

Uso de argumento duplo

  • Especifica o início e o fim da sequência.
  • Exemplo: range(10, 15) resulta em 10, 11, 12, 13, 14.

Uso do argumento triplo

  • Adiciona a capacidade de especificar a etapa de incrementação.
  • Exemplo: range(1, 20, 2) produz 1, 3, 5, ..., 19.

Aplicações práticas e exemplos

Looping sobre coleções

1. Cordas: Iterar sobre cada caractere.

for char in "Hello":
    print(char)
H
e
l
l
o

Esse loop itera sobre cada caractere da string "Hello". O loop for atribui cada caractere ('H', 'e', 'l', 'l', 'o') à variável char e o imprime. Portanto, a saída será cada caractere de "Hello" em uma nova linha.

2. Listas: Percorrer os itens da lista.

for num in [1, 2, 3]:
    print(num)
1
2
3

Aqui, o loop percorre a lista [1, 2, 3]. Em cada iteração, num assume o valor do próximo elemento da lista, começando com 1, depois 2 e, finalmente, 3. Cada número é impresso, resultando nos números 1, 2 e 3, cada um aparecendo em uma nova linha.

3. Dicionários: Chaves e valores de acesso.

for key, value in {'a': 1, 'b': 2}.items():
    print(key, value)
a 1
b 2

Esse loop itera sobre um dicionário que contém dois pares de valores-chave ('a': 1 e "b": 2). O método .items() retorna um objeto de visualização que exibe uma lista de pares de tuplas de valores-chave de um dicionário. Em cada iteração, a chave e o valor são atribuídos à chave e ao valor do próximo item do dicionário, que são impressos.

Mecanismos de controle de loop

1. A declaração break: Termina o loop prematuramente.

for i in range(10):
    if i == 5:
        break

Esse código itera de 0 a 9 (conforme gerado por range(10)). Quando o valor de i chega a 5, a condição da instrução if é atendida, acionando a instrução break. Isso interrompe o loop, mesmo que ele não tenha iterado todos os valores até 9.

2. A declaração continue: Pula a iteração atual.

for i in range(10):
    if i % 2 == 0:
        continue
    print(i)
1
3
5
7
9

Esse loop também itera de 0 a 9. No entanto, a instrução if verifica se i é um número par (isso é o que i % 2 == 0 faz - verifica se o resto quando i é dividido por 2 é 0). Se for par, a instrução continue é executada, o que pula o restante do corpo do loop para essa iteração. Portanto, somente os números ímpares são impressos

Técnicas avançadas usando for Loops

1. Loops aninhados

Esse é um exemplo de loops aninhados, em que um loop está dentro de outro. O loop externo (for i in range(3)) itera pelos números 0, 1 e 2. Para cada iteração do loop externo, o loop interno (for j in range(3)) também itera pelos números 0, 1 e 2. A instrução print(i, j) é executada para cada combinação de i e j.

for i in range(3):
    for j in range(3):
        print(i, j)
0 0
0 1
0 2
1 0
1 1
1 2
2 0
2 1
2 2

O resultado será uma série de pares que representam todas as combinações de i e j no intervalo de 0 a 2.

2. Looping com Enumerate

A função enumerate adiciona um contador a um iterável e o retorna na forma de um objeto enumerate. Esse objeto pode ser usado diretamente em for loops. Neste exemplo, o loop for é usado com enumerate em uma lista ['a', 'b', 'c'].

for index, value in enumerate(['a', 'b', 'c']):
    print(index, value)
0 a
1 b
2 c

A função enumerate adiciona um índice a cada item da lista, começando em 0 por padrão. Em seguida, o loop itera sobre esse objeto enumerado, desempacotando cada item em índice e valor. O índice é o índice de cada item, e o valor é o item correspondente da lista. Portanto, a saída será uma série de linhas com o índice e o valor.

Esses exemplos ilustram como os loops aninhados podem ser usados para executar iterações complexas e como o enumerate pode ser usado para rastrear facilmente o índice de itens em um loop.

Como for Os loops são usados na ciência de dados

O loop for é um conceito crucial na programação Python e na análise de dados. Ele tem uma ampla gama de aplicações, como a iteração sobre listas e matrizes, o que simplifica as tarefas de manipulação de dados. Eu uso com frequência os loops for, especialmente os loops aninhados, para gerenciar com eficiência estruturas de dados multidimensionais, uma etapa essencial na criação de algoritmos de aprendizado de máquina. Além disso, os cientistas de dados geralmente combinam os loops for com a lógica condicional para o processamento de dados complexos, como a agregação de dados, por exemplo, o cálculo da média de uma lista de números.

No entanto, os loops for podem não ser a melhor opção quando você trabalha com grandes conjuntos de dados e algoritmos de aprendizagem profunda. É por isso que temos bibliotecas como NumPy, pandas e PyTorch, que são otimizadas para operações vetorizadas, tornando-as mais eficientes para a manipulação de dados em grande escala.

Conclusão: Adotando a eficiência de loop

Em conclusão, o loop for do Python é uma ferramenta indispensável para os programadores. Sua simplicidade, aliada ao poder da função range(), torna-a ideal para uma variedade de tarefas iterativas em ciência de dados e programação geral. À medida que você praticar e aplicar esses conceitos, verá que seu código Python se tornará mais eficiente e expressivo.

Você pode ler mais sobre While Loops em nosso tutorial completo e explorar esse e outros conceitos em nosso curso Python Intermediário.


Abid Ali Awan's photo
Author
Abid Ali Awan
LinkedIn
Twitter

Sou um cientista de dados certificado que gosta de criar aplicativos de aprendizado de máquina e escrever blogs sobre ciência de dados. No momento, estou me concentrando na criação e edição de conteúdo e no trabalho com modelos de linguagem de grande porte.

Temas

Aprenda mais Python! 

Certificação disponível

Curso

Python intermediário

4 hr
1.2M
Eleve o nível de suas habilidades em ciência de dados criando visualizações usando Matplotlib e manipulando DataFrames com pandas.
Ver DetalhesRight Arrow
Iniciar curso
Ver maisRight Arrow
Relacionado

Tutorial

Tutorial do For Loops em Python

Saiba como implementar For Loops em Python para iterar uma sequência ou as linhas e colunas de um dataframe do pandas.
Aditya Sharma's photo

Aditya Sharma

5 min

Tutorial

Tutorial de compreensão de dicionário Python

Saiba tudo sobre a compreensão de dicionário do Python: como você pode usá-la para criar dicionários, substituir loops for (aninhados) ou funções lambda por map(), filter() e reduce(), ...!
Sejal Jaiswal's photo

Sejal Jaiswal

14 min

Tutorial

Tutorial de iteradores e geradores Python

Explore a diferença entre Iteradores e Geradores do Python e saiba quais são os melhores para usar em várias situações.
Kurtis Pykes 's photo

Kurtis Pykes

10 min

Tutorial

Desenvolvimento de back-end em Python: Um guia completo para iniciantes

Este guia completo ensina a você os fundamentos do desenvolvimento de back-end em Python. Aprenda conceitos básicos, estruturas e práticas recomendadas para você começar a criar aplicativos da Web.
Oluseye Jeremiah's photo

Oluseye Jeremiah

15 min

Ver maisVer mais