Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Laços For | Laços de Repetição
Introdução ao Python

Deslize para mostrar o menu

book
Laços For

Bem-vindo à seção dedicada a loops!

Neste capítulo, exploraremos como os loops são uma ferramenta fundamental para automatizar tarefas repetitivas e são essenciais para lidar de forma eficiente com listas e outros tipos de dados iteráveis.

Acompanhe Alex enquanto ele demonstra o uso de laços for para simplificar operações em nossa mercearia:

O uso de laços for em Python permite executar um bloco de código repetidamente para cada item em uma coleção (objeto iterável). Veja o que é importante saber sobre laços for:

Sintaxe

Inicie um laço for com a palavra-chave for, seguida de um nome de variável como item para representar cada elemento na sequência. Em seguida, utilize a palavra-chave in e o objeto iterável, como groceryItems. O bloco de código dentro do laço é executado uma vez para cada elemento.

Neste exemplo, item atua como a variável iteradora que acessa sequencialmente cada elemento da lista groceryItems e executa a função print() para cada um deles:

1234
groceryItems = ["milk", "eggs", "cheese", "butter"] for item in groceryItems: # Code to be executed print(item)
copy

Iteração refere-se ao processo de executar um bloco de código repetidamente. Python oferece dois principais tipos de iteração:

Iteração Definida

Quando o número de iterações é conhecido antecipadamente. Os laços for são um exemplo clássico, parando automaticamente quando atingem o final da sequência.

Iteração Indefinida

Na qual a execução continua até que uma condição específica seja atendida, normalmente controlada por laços while, que serão explorados em detalhes no próximo capítulo.

Exemplos de Aplicação

Os laços for em Python podem ser utilizados com qualquer objeto iterável (lists, tuples, dictionaries, strings), permitindo a manipulação de dados elemento por elemento.

Seja para acessar itens em uma lista, chaves ou valores em um dicionário, ou caracteres em uma string, os laços for oferecem uma sintaxe clara que simplifica o código para tarefas repetitivas.

Veja como utilizar um laço for para iterar sobre os elementos de uma string e de uma tupla, de forma semelhante ao que foi visto com listas:

123456789
# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
copy

Ao utilizar um laço for com um dicionário, iterar diretamente sobre o dicionário fará o laço percorrer suas chaves por padrão.

Veja o que acontece ao iterar diretamente sobre um dicionário:

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
copy

Observe que a variável iteradora product acessa apenas as chaves do dicionário.

Para iterar sobre os valores de um dicionário, utilize o método values().

Este método é útil para operações que exigem acesso apenas aos valores, sem a necessidade de referenciar as chaves:

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
copy

Se for necessário acessar chaves e valores simultaneamente, o método items() permite percorrer pares de chave-valor em um dicionário.

Para utilizar este método em um laço for, especifique duas variáveis antes da palavra-chave in — uma para a chave (product) e outra para o valor (stock):

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
copy

Nota

Neste exemplo, utilizamos f-strings (também conhecidas como literais de string formatadas) para inserir variáveis diretamente em strings. A sintaxe é simples: adicione um f antes da aspa de abertura " e coloque variáveis ou expressões entre chaves {} dentro da string. Esse método torna a combinação de strings e variáveis em instruções print muito mais legível, portanto, vale a pena aprender.

Com base no seu conhecimento de if/else, operadores booleanos e laços for, é possível realizar uma verificação simples de inventário em um dicionário:

123456789101112131415161718
# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
copy

Nota

Você pode perceber que colocamos instruções if dentro do laço for, o que adicionou indentação extra ao bloco if. Como mencionado anteriormente, cada bloco de código indentado pode ser tratado de forma independente, independentemente de onde esteja posicionado. O principal é garantir que a indentação seja consistente e correta entre eles.

Tarefa

Swipe to start coding

Gerencie o estoque e as promoções em um supermercado percorrendo o inventário, verificando condições de reposição e aplicando promoções.

  • Percorra cada produto no dicionário inventory.
  • Dentro do loop, obtenha o current_stock e o min_stock da lista de inventário.
  • Utilize uma declaração if para verificar se o estoque atual é menor ou igual ao estoque mínimo:
    • Se for o caso, exiba uma mensagem de reposição, aumente o estoque em 20, atualize o inventário e exiba a mensagem de atualização.
  • Utilize outra declaração if para verificar se o produto existe no dicionário promotions.

Requisitos de Saída

Para cada item, exiba:

  • --- Processing: <item> ---

  • Se for necessário repor o estoque:
    <item> needs restocking. Current stock: <current_stock>. Minimum required: <min_stock>

    Updated stock for <item>: <updated_stock>

  • Se houver promoção:
    Promotion for <item>: <promotion_details>

  • Caso contrário:
    No promotions for <item>

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 5. Capítulo 1

Pergunte à IA

expand
ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

book
Laços For

Bem-vindo à seção dedicada a loops!

Neste capítulo, exploraremos como os loops são uma ferramenta fundamental para automatizar tarefas repetitivas e são essenciais para lidar de forma eficiente com listas e outros tipos de dados iteráveis.

Acompanhe Alex enquanto ele demonstra o uso de laços for para simplificar operações em nossa mercearia:

O uso de laços for em Python permite executar um bloco de código repetidamente para cada item em uma coleção (objeto iterável). Veja o que é importante saber sobre laços for:

Sintaxe

Inicie um laço for com a palavra-chave for, seguida de um nome de variável como item para representar cada elemento na sequência. Em seguida, utilize a palavra-chave in e o objeto iterável, como groceryItems. O bloco de código dentro do laço é executado uma vez para cada elemento.

Neste exemplo, item atua como a variável iteradora que acessa sequencialmente cada elemento da lista groceryItems e executa a função print() para cada um deles:

1234
groceryItems = ["milk", "eggs", "cheese", "butter"] for item in groceryItems: # Code to be executed print(item)
copy

Iteração refere-se ao processo de executar um bloco de código repetidamente. Python oferece dois principais tipos de iteração:

Iteração Definida

Quando o número de iterações é conhecido antecipadamente. Os laços for são um exemplo clássico, parando automaticamente quando atingem o final da sequência.

Iteração Indefinida

Na qual a execução continua até que uma condição específica seja atendida, normalmente controlada por laços while, que serão explorados em detalhes no próximo capítulo.

Exemplos de Aplicação

Os laços for em Python podem ser utilizados com qualquer objeto iterável (lists, tuples, dictionaries, strings), permitindo a manipulação de dados elemento por elemento.

Seja para acessar itens em uma lista, chaves ou valores em um dicionário, ou caracteres em uma string, os laços for oferecem uma sintaxe clara que simplifica o código para tarefas repetitivas.

Veja como utilizar um laço for para iterar sobre os elementos de uma string e de uma tupla, de forma semelhante ao que foi visto com listas:

123456789
# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
copy

Ao utilizar um laço for com um dicionário, iterar diretamente sobre o dicionário fará o laço percorrer suas chaves por padrão.

Veja o que acontece ao iterar diretamente sobre um dicionário:

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
copy

Observe que a variável iteradora product acessa apenas as chaves do dicionário.

Para iterar sobre os valores de um dicionário, utilize o método values().

Este método é útil para operações que exigem acesso apenas aos valores, sem a necessidade de referenciar as chaves:

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
copy

Se for necessário acessar chaves e valores simultaneamente, o método items() permite percorrer pares de chave-valor em um dicionário.

Para utilizar este método em um laço for, especifique duas variáveis antes da palavra-chave in — uma para a chave (product) e outra para o valor (stock):

1234567
# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
copy

Nota

Neste exemplo, utilizamos f-strings (também conhecidas como literais de string formatadas) para inserir variáveis diretamente em strings. A sintaxe é simples: adicione um f antes da aspa de abertura " e coloque variáveis ou expressões entre chaves {} dentro da string. Esse método torna a combinação de strings e variáveis em instruções print muito mais legível, portanto, vale a pena aprender.

Com base no seu conhecimento de if/else, operadores booleanos e laços for, é possível realizar uma verificação simples de inventário em um dicionário:

123456789101112131415161718
# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
copy

Nota

Você pode perceber que colocamos instruções if dentro do laço for, o que adicionou indentação extra ao bloco if. Como mencionado anteriormente, cada bloco de código indentado pode ser tratado de forma independente, independentemente de onde esteja posicionado. O principal é garantir que a indentação seja consistente e correta entre eles.

Tarefa

Swipe to start coding

Gerencie o estoque e as promoções em um supermercado percorrendo o inventário, verificando condições de reposição e aplicando promoções.

  • Percorra cada produto no dicionário inventory.
  • Dentro do loop, obtenha o current_stock e o min_stock da lista de inventário.
  • Utilize uma declaração if para verificar se o estoque atual é menor ou igual ao estoque mínimo:
    • Se for o caso, exiba uma mensagem de reposição, aumente o estoque em 20, atualize o inventário e exiba a mensagem de atualização.
  • Utilize outra declaração if para verificar se o produto existe no dicionário promotions.

Requisitos de Saída

Para cada item, exiba:

  • --- Processing: <item> ---

  • Se for necessário repor o estoque:
    <item> needs restocking. Current stock: <current_stock>. Minimum required: <min_stock>

    Updated stock for <item>: <updated_stock>

  • Se houver promoção:
    Promotion for <item>: <promotion_details>

  • Caso contrário:
    No promotions for <item>

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 5. Capítulo 1
Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Sentimos muito que algo saiu errado. O que aconteceu?
some-alt