Conteúdo do Curso
Introdução ao Python
Introdução ao Python
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
:
# 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
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:
# 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)
Nota
A fórmula
prices[cost] -= prices[cost] * discount_factor
é equivalente aprices[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 de1
em vez de0
, 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.
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
eshipment_received
. Cada lista aninhada dentro dessas listas contém um nome de produto e sua quantidade. - Use um loop
for
combinado com as funçõesrange()
elen()
para iterar sobre a listastock_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
Obrigado pelo seu feedback!
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
:
# 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
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:
# 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)
Nota
A fórmula
prices[cost] -= prices[cost] * discount_factor
é equivalente aprices[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 de1
em vez de0
, 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.
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
eshipment_received
. Cada lista aninhada dentro dessas listas contém um nome de produto e sua quantidade. - Use um loop
for
combinado com as funçõesrange()
elen()
para iterar sobre a listastock_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
Obrigado pelo seu feedback!