Conteúdo do Curso
Introdução ao Python
Introdução ao Python
Comportamento de Listas em Funções
Vamos explorar trabalhar com listas dentro de funções. Embora seja semelhante a trabalhar com números, há alguns detalhes importantes a serem observados.
Listas são mutáveis, o que significa que quaisquer alterações feitas em uma lista dentro de uma função também afetarão a lista original fora da função se passada diretamente.
Para evitar isso, você pode usar o método copy()
com qualquer tipo de dado mutável. Ao fazer isso, você cria uma cópia superficial da lista, permitindo que você modifique um duplicado em vez do original. Isso garante que as alterações feitas dentro da função não impactem a lista original.
def add_strawberry(original_list): list_copy = original_list.copy() # Create a copy of the original list list_copy.append("Strawberry") # Modify the copied list return list_copy # Original list fruits = ["Apple", "Banana", "Cherry"] # Call the function new_fruits = add_strawberry(fruits) # Check the results print("Original list:", fruits) # ['Apple', 'Banana', 'Cherry'] print("Modified list:", new_fruits) # ['Apple', 'Banana', 'Cherry', 'Strawberry']
Neste exemplo, a lista original fruits
permanece inalterada porque copy()
foi usado. Sem copy()
, modificar a lista dentro da função teria alterado a lista original fruits
também.
Swipe to start coding
Nesta tarefa, você trabalhará com uma lista de preços de produtos de um supermercado. Seu objetivo é criar uma função que aplique um desconto de 10% a cada produto com preço acima de $2,00, garantindo que a lista original permaneça inalterada. Este exercício ajudará você a praticar o uso de funções, loops e manipulação de listas em Python.
Instruções de Código
- Defina uma função chamada
apply_discount(prices)
que receba uma lista de preços como argumento. - Dentro da função, crie uma cópia da lista
prices
para garantir que a lista original permaneça inalterada. Atribua a cópia à variávelprices_copy
. - Use um loop
for
para iterar pela lista copiada usando índices. - Dentro do loop, verifique se cada preço excede $2,00. Se sim, aplique um desconto de 10% a esse preço.
- Retorne a versão atualizada da lista copiada após aplicar os descontos.
Requisitos de Saída
- A função deve retornar uma nova lista com os preços descontados.
- Imprima a lista atualizada de preços no formato:
Updated product prices: <$updated_prices>
.
Nota
É importante iterar pela lista usando índices (
for index in range(len(prices)):
) em vez de valores (for price in prices:
), pois o último apenas modifica cópias dos valores, deixando a lista original inalterada.
Solução
Obrigado pelo seu feedback!
Comportamento de Listas em Funções
Vamos explorar trabalhar com listas dentro de funções. Embora seja semelhante a trabalhar com números, há alguns detalhes importantes a serem observados.
Listas são mutáveis, o que significa que quaisquer alterações feitas em uma lista dentro de uma função também afetarão a lista original fora da função se passada diretamente.
Para evitar isso, você pode usar o método copy()
com qualquer tipo de dado mutável. Ao fazer isso, você cria uma cópia superficial da lista, permitindo que você modifique um duplicado em vez do original. Isso garante que as alterações feitas dentro da função não impactem a lista original.
def add_strawberry(original_list): list_copy = original_list.copy() # Create a copy of the original list list_copy.append("Strawberry") # Modify the copied list return list_copy # Original list fruits = ["Apple", "Banana", "Cherry"] # Call the function new_fruits = add_strawberry(fruits) # Check the results print("Original list:", fruits) # ['Apple', 'Banana', 'Cherry'] print("Modified list:", new_fruits) # ['Apple', 'Banana', 'Cherry', 'Strawberry']
Neste exemplo, a lista original fruits
permanece inalterada porque copy()
foi usado. Sem copy()
, modificar a lista dentro da função teria alterado a lista original fruits
também.
Swipe to start coding
Nesta tarefa, você trabalhará com uma lista de preços de produtos de um supermercado. Seu objetivo é criar uma função que aplique um desconto de 10% a cada produto com preço acima de $2,00, garantindo que a lista original permaneça inalterada. Este exercício ajudará você a praticar o uso de funções, loops e manipulação de listas em Python.
Instruções de Código
- Defina uma função chamada
apply_discount(prices)
que receba uma lista de preços como argumento. - Dentro da função, crie uma cópia da lista
prices
para garantir que a lista original permaneça inalterada. Atribua a cópia à variávelprices_copy
. - Use um loop
for
para iterar pela lista copiada usando índices. - Dentro do loop, verifique se cada preço excede $2,00. Se sim, aplique um desconto de 10% a esse preço.
- Retorne a versão atualizada da lista copiada após aplicar os descontos.
Requisitos de Saída
- A função deve retornar uma nova lista com os preços descontados.
- Imprima a lista atualizada de preços no formato:
Updated product prices: <$updated_prices>
.
Nota
É importante iterar pela lista usando índices (
for index in range(len(prices)):
) em vez de valores (for price in prices:
), pois o último apenas modifica cópias dos valores, deixando a lista original inalterada.
Solução
Obrigado pelo seu feedback!