Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Modificando Funções | Funções
Introdução ao Python

Deslize para mostrar o menu

book
Modificando Funções

Em programação, funções são ferramentas dinâmicas que podem se adaptar a diferentes situações e necessidades. Elas não são apenas blocos de código fixos. É possível aprimorar funções para torná-las mais versáteis e fáceis de usar em diversos contextos.

Neste capítulo, serão exploradas algumas técnicas importantes para modificar funções, como o uso de argumentos padrão e argumentos nomeados.

Veja a seguir um exemplo simples de modificação de funções para aumentar sua utilidade em nosso sistema de gerenciamento de supermercado:

Argumentos Padrão

Argumentos padrão são um recurso útil em Python que permite especificar valores padrão para os parâmetros de uma função.

Na função apply_discount(), o parâmetro discount é definido como 0.10 por padrão. Isso significa que a função aplicará automaticamente um desconto de 10% caso não seja especificado outro valor. Como mostrado na variável default_discount_price, é possível chamar a função apenas com o parâmetro price.

No entanto, se necessário, é possível sobrescrever o valor padrão passando tanto o price quanto um discount personalizado (por exemplo, 0.20 para 20%), como demonstrado na variável custom_discount_price.

123456789101112
# Define a function with a default `discount` argument def apply_discount(price, discount=0.10): discounted_price = price * (1 - discount) return discounted_price # Call the function without providing a `discount`, using the default value default_discount_price = apply_discount(100) print(f"Price after applying the default discount: ${default_discount_price}") # Call the function with a custom `discount` value custom_discount_price = apply_discount(100, 0.20) print(f"Price after applying a custom discount: ${custom_discount_price}")
copy

Argumentos Nomeados

Argumentos nomeados em Python permitem passar argumentos explicitamente nomeando cada parâmetro, tornando as chamadas de função mais legíveis e flexíveis. Isso é especialmente útil quando uma função possui múltiplos parâmetros ou quando a ordem dos argumentos pode ser confusa.

No exemplo a seguir, tanto price quanto discount são especificados, enquanto o parâmetro tax permanece com seu valor padrão, proporcionando flexibilidade sem comprometer a clareza.

12345678
# Function where `tax` has a default value def calculate_total(price, discount, tax=0.05): total = price * (1 + tax) * (1 - discount) return total # Calling the function using keyword arguments total_cost = calculate_total(price=100, discount=0.15) print(f"Total cost after applying discount: ${total_cost}")
copy

Nota

A ordem dos parâmetros não importa quando eles são passados usando argumentos nomeados.

Tarefa

Swipe to start coding

Crie funções para calcular o custo total de um produto aplicando desconto e imposto, utilizando argumentos nomeados e valores padrão para maior flexibilidade.

  • Definir apply_discount(price, discount=0.05)
    → Retorna o preço após aplicar o desconto.
  • Definir apply_tax(price, tax=0.07)
    → Retorna o preço após adicionar o imposto.
  • Definir calculate_total(price, discount=0.05, tax=0.07)
    → Utiliza apply_discount() e apply_tax() para retornar o preço total com desconto e imposto aplicados.
  • Chamar calculate_total(120) utilizando o desconto e imposto padrão.
  • Chamar calculate_total(100, discount=0.10, tax=0.08) utilizando valores personalizados por meio de argumentos nomeados.

Requisitos de Saída

  • Imprimir o resultado com valores padrão:
    Total cost with default discount and tax: $<total_price_default>
  • Imprimir o resultado com valores personalizados:
    Total cost with custom discount and tax: $<total_price_custom>

Observação

Ao definir funções, coloque primeiro os parâmetros obrigatórios, seguidos dos parâmetros com valores padrão.

Ao chamar funções com argumentos nomeados, argumentos posicionais devem vir antes dos argumentos nomeados.

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 6. Capítulo 6

Pergunte à IA

expand
ChatGPT

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

book
Modificando Funções

Em programação, funções são ferramentas dinâmicas que podem se adaptar a diferentes situações e necessidades. Elas não são apenas blocos de código fixos. É possível aprimorar funções para torná-las mais versáteis e fáceis de usar em diversos contextos.

Neste capítulo, serão exploradas algumas técnicas importantes para modificar funções, como o uso de argumentos padrão e argumentos nomeados.

Veja a seguir um exemplo simples de modificação de funções para aumentar sua utilidade em nosso sistema de gerenciamento de supermercado:

Argumentos Padrão

Argumentos padrão são um recurso útil em Python que permite especificar valores padrão para os parâmetros de uma função.

Na função apply_discount(), o parâmetro discount é definido como 0.10 por padrão. Isso significa que a função aplicará automaticamente um desconto de 10% caso não seja especificado outro valor. Como mostrado na variável default_discount_price, é possível chamar a função apenas com o parâmetro price.

No entanto, se necessário, é possível sobrescrever o valor padrão passando tanto o price quanto um discount personalizado (por exemplo, 0.20 para 20%), como demonstrado na variável custom_discount_price.

123456789101112
# Define a function with a default `discount` argument def apply_discount(price, discount=0.10): discounted_price = price * (1 - discount) return discounted_price # Call the function without providing a `discount`, using the default value default_discount_price = apply_discount(100) print(f"Price after applying the default discount: ${default_discount_price}") # Call the function with a custom `discount` value custom_discount_price = apply_discount(100, 0.20) print(f"Price after applying a custom discount: ${custom_discount_price}")
copy

Argumentos Nomeados

Argumentos nomeados em Python permitem passar argumentos explicitamente nomeando cada parâmetro, tornando as chamadas de função mais legíveis e flexíveis. Isso é especialmente útil quando uma função possui múltiplos parâmetros ou quando a ordem dos argumentos pode ser confusa.

No exemplo a seguir, tanto price quanto discount são especificados, enquanto o parâmetro tax permanece com seu valor padrão, proporcionando flexibilidade sem comprometer a clareza.

12345678
# Function where `tax` has a default value def calculate_total(price, discount, tax=0.05): total = price * (1 + tax) * (1 - discount) return total # Calling the function using keyword arguments total_cost = calculate_total(price=100, discount=0.15) print(f"Total cost after applying discount: ${total_cost}")
copy

Nota

A ordem dos parâmetros não importa quando eles são passados usando argumentos nomeados.

Tarefa

Swipe to start coding

Crie funções para calcular o custo total de um produto aplicando desconto e imposto, utilizando argumentos nomeados e valores padrão para maior flexibilidade.

  • Definir apply_discount(price, discount=0.05)
    → Retorna o preço após aplicar o desconto.
  • Definir apply_tax(price, tax=0.07)
    → Retorna o preço após adicionar o imposto.
  • Definir calculate_total(price, discount=0.05, tax=0.07)
    → Utiliza apply_discount() e apply_tax() para retornar o preço total com desconto e imposto aplicados.
  • Chamar calculate_total(120) utilizando o desconto e imposto padrão.
  • Chamar calculate_total(100, discount=0.10, tax=0.08) utilizando valores personalizados por meio de argumentos nomeados.

Requisitos de Saída

  • Imprimir o resultado com valores padrão:
    Total cost with default discount and tax: $<total_price_default>
  • Imprimir o resultado com valores personalizados:
    Total cost with custom discount and tax: $<total_price_custom>

Observação

Ao definir funções, coloque primeiro os parâmetros obrigatórios, seguidos dos parâmetros com valores padrão.

Ao chamar funções com argumentos nomeados, argumentos posicionais devem vir antes dos argumentos nomeados.

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 6. Capítulo 6
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