Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Iterando Sobre Índices | Loops
Introdução ao Python
course content

Conteúdo do Curso

Introdução ao Python

Introdução ao Python

1. Introdução
2. Variáveis e Tipos
3. Declarações Condicionais
4. Outros Tipos de Dados
5. Loops
6. Funções

book
Iterando Sobre Índices

Na tarefa anterior, você forneceu um número específico de itens para a função range(). Mas e se você precisar determinar o número dinamicamente? É aqui que a iteração por índice se torna essencial.

A iteração por índice é uma técnica fundamental em Python que permite acessar e modificar elementos por suas posições dentro de estruturas de dados como listas ou arrays. É especialmente útil para tarefas que precisam de controle preciso sobre cada elemento, como atualizar níveis de estoque ou gerenciar dados de vendas em uma mercearia.

Assista enquanto Alex demonstra como iterar sobre índices pode simplificar operações em nosso exemplo de mercearia:

Iterar sobre índices é útil quando você precisa acessar tanto o índice quanto o valor de cada elemento em uma lista. Quando usamos range() com len(), estamos combinando duas funções para gerar uma sequência de números correspondentes aos índices dos elementos da lista. Este método é particularmente útil em loops onde você precisa acessar ou modificar elementos com base em sua posição.

Por exemplo, este loop for acessa o índice e o valor de cada elemento na grocery_list:

12345678
# List of grocery items grocery_list = ["Apples", "Bananas", "Carrots", "Cucumbers"] # Initialize a for loop to iterate over indexes for item in range(len(grocery_list)): print("Index:", item) print("Item:", grocery_list[item]) print("----") # Printing a divider line for clarity
copy

Aplicação de Exemplo

Para aplicar um desconto a uma lista de preços, precisamos modificar os elementos da lista diretamente. Usar um loop simples como for cost in prices: nos daria apenas uma cópia de cada item, não uma referência ao item real na lista. As modificações feitas dessa maneira não afetariam a lista original.

Para garantir que atualizamos diretamente cada elemento na lista prices, usamos range(len(prices)) para iterar sobre os índices. Isso nos permite aplicar um fator de desconto a cada elemento:

12345678910111213
# List of original prices of grocery items prices = [1.50, 2.00, 0.75, 3.25] # Discount factor (10% off each item) discount_factor = 0.10 # Iterate over the list of prices using range(len()) for cost in range(len(prices)): # Apply the discount by reducing the price prices[cost] -= prices[cost] * discount_factor print(f"New price of item {cost + 1}: ${prices[cost]}") print("Updated prices:", prices)
copy

Nota

  • A fórmula prices[cost] -= prices[cost] * discount_factor é equivalente a prices[cost] = prices[cost] - prices[cost] * discount_factor. Isso subtrai uma parte do preço original (determinada pelo desconto) de si mesmo, aplicando efetivamente o desconto.

  • O cost + 1 na instrução de impressão ajusta o índice para que ele apareça começando de 1 em vez de 0, tornando-o mais amigável para o usuário.

Este método garante que a lista original prices seja atualizada diretamente com os novos preços com desconto, refletindo as mudanças imediatamente em todo o programa onde a lista prices é usada.

Tarefa

Swipe to start coding

Nesta tarefa, você trabalhará com listas que representam quantidades de estoque e remessas para atualizar os níveis de inventário. Você usará iteração por índice para atualizar eficientemente as quantidades de estoque com base nos dados de remessa recebidos.

Instruções de Código

  • Você tem duas listas: stock_items e shipment_received. Cada lista aninhada dentro dessas listas contém um nome de produto e sua quantidade.
  • Use um loop for combinado com as funções range() e len() para iterar sobre a lista stock_items por índice.
  • Para cada produto, atualize a quantidade de estoque adicionando a quantidade correspondente da lista shipment_received.

Requisitos de Saída

  • Para cada produto, imprima uma mensagem no formato: Stock updated for <product_name>: <updated_quantity> units.
  • Após atualizar todos os produtos, imprima as quantidades finais de estoque com a mensagem: Final stock quantities:.
  • Exiba a lista atualizada stock_items no formato: Stock Items: <stock_items>.

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 4
toggle bottom row

book
Iterando Sobre Índices

Na tarefa anterior, você forneceu um número específico de itens para a função range(). Mas e se você precisar determinar o número dinamicamente? É aqui que a iteração por índice se torna essencial.

A iteração por índice é uma técnica fundamental em Python que permite acessar e modificar elementos por suas posições dentro de estruturas de dados como listas ou arrays. É especialmente útil para tarefas que precisam de controle preciso sobre cada elemento, como atualizar níveis de estoque ou gerenciar dados de vendas em uma mercearia.

Assista enquanto Alex demonstra como iterar sobre índices pode simplificar operações em nosso exemplo de mercearia:

Iterar sobre índices é útil quando você precisa acessar tanto o índice quanto o valor de cada elemento em uma lista. Quando usamos range() com len(), estamos combinando duas funções para gerar uma sequência de números correspondentes aos índices dos elementos da lista. Este método é particularmente útil em loops onde você precisa acessar ou modificar elementos com base em sua posição.

Por exemplo, este loop for acessa o índice e o valor de cada elemento na grocery_list:

12345678
# List of grocery items grocery_list = ["Apples", "Bananas", "Carrots", "Cucumbers"] # Initialize a for loop to iterate over indexes for item in range(len(grocery_list)): print("Index:", item) print("Item:", grocery_list[item]) print("----") # Printing a divider line for clarity
copy

Aplicação de Exemplo

Para aplicar um desconto a uma lista de preços, precisamos modificar os elementos da lista diretamente. Usar um loop simples como for cost in prices: nos daria apenas uma cópia de cada item, não uma referência ao item real na lista. As modificações feitas dessa maneira não afetariam a lista original.

Para garantir que atualizamos diretamente cada elemento na lista prices, usamos range(len(prices)) para iterar sobre os índices. Isso nos permite aplicar um fator de desconto a cada elemento:

12345678910111213
# List of original prices of grocery items prices = [1.50, 2.00, 0.75, 3.25] # Discount factor (10% off each item) discount_factor = 0.10 # Iterate over the list of prices using range(len()) for cost in range(len(prices)): # Apply the discount by reducing the price prices[cost] -= prices[cost] * discount_factor print(f"New price of item {cost + 1}: ${prices[cost]}") print("Updated prices:", prices)
copy

Nota

  • A fórmula prices[cost] -= prices[cost] * discount_factor é equivalente a prices[cost] = prices[cost] - prices[cost] * discount_factor. Isso subtrai uma parte do preço original (determinada pelo desconto) de si mesmo, aplicando efetivamente o desconto.

  • O cost + 1 na instrução de impressão ajusta o índice para que ele apareça começando de 1 em vez de 0, tornando-o mais amigável para o usuário.

Este método garante que a lista original prices seja atualizada diretamente com os novos preços com desconto, refletindo as mudanças imediatamente em todo o programa onde a lista prices é usada.

Tarefa

Swipe to start coding

Nesta tarefa, você trabalhará com listas que representam quantidades de estoque e remessas para atualizar os níveis de inventário. Você usará iteração por índice para atualizar eficientemente as quantidades de estoque com base nos dados de remessa recebidos.

Instruções de Código

  • Você tem duas listas: stock_items e shipment_received. Cada lista aninhada dentro dessas listas contém um nome de produto e sua quantidade.
  • Use um loop for combinado com as funções range() e len() para iterar sobre a lista stock_items por índice.
  • Para cada produto, atualize a quantidade de estoque adicionando a quantidade correspondente da lista shipment_received.

Requisitos de Saída

  • Para cada produto, imprima uma mensagem no formato: Stock updated for <product_name>: <updated_quantity> units.
  • Após atualizar todos os produtos, imprima as quantidades finais de estoque com a mensagem: Final stock quantities:.
  • Exiba a lista atualizada stock_items no formato: Stock Items: <stock_items>.

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 4
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