Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Modifiera Funktioner | Funktioner
Introduktion till Python

bookModifiera Funktioner

Funktioner är flexibla verktyg inom programmering. Du kan ändra och förbättra dem för att passa olika behov. I detta kapitel lär du dig hur du kan göra funktioner mer användbara genom att använda standardargument och nyckelordsargument.

Vi tittar på ett enkelt exempel från en livsmedelsbutik för att visa hur du kan modifiera funktioner för att göra dem mer hjälpsamma:

Standardargument

Standardargument är en användbar funktion i Python som gör det möjligt att ange standardvärden för funktionsparametrar.

I funktionen apply_discount() är parametern discount satt till 0.10 som standard. Det innebär att funktionen automatiskt tillämpar en 10% rabatt om inget annat anges. Som visas i variabeln default_discount_price kan vi anropa funktionen med endast parametern price.

Om det behövs kan vi dock åsidolägga standardvärdet genom att ange både price och en egen discount (t.ex. 0.20 för 20%) som visas med variabeln 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

Nyckelordargument

Nyckelordargument i Python möjliggör att skicka argument genom att uttryckligen namnge varje parameter, vilket gör funktionsanropen mer läsbara och flexibla. Detta är särskilt användbart när en funktion har flera parametrar eller när ordningen på argumenten kan vara förvirrande.

I följande exempel anges både price och discount, medan parametern tax behåller sitt standardvärde, vilket ger flexibilitet utan att kompromissa med tydligheten.

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
Note
Observera

Ordningen på parametrarna spelar ingen roll när de skickas med nyckelordargument.

Uppgift

Swipe to start coding

Skapa ett enkelt kassasystem för en livsmedelsbutik med hjälp av standardvärden och nyckelordsargument.

  • Definiera apply_discount(price, discount=0.10) → Returnerar priset efter rabatt (10 % som standard).
  • Definiera add_tax(price, tax=0.05) → Returnerar priset efter att moms har lagts till (5 % som standard).
  • Definiera final_price(price, discount=0.10, tax=0.05) → Använder först apply_discount(), sedan add_tax(), och returnerar det slutliga resultatet.

Kör sedan två exempel:

  • Anropa final_price(50) med standardvärden.
  • Anropa final_price(50, tax=0.08) med en anpassad momssats via ett nyckelordsargument.

Utdatakrav

Skriv ut exakt dessa två rader (avrundat till 2 decimaler):

  • Final price with default discount and tax: $<value>
  • Final price with custom tax: $<value>

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 6. Kapitel 6
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

close

bookModifiera Funktioner

Svep för att visa menyn

Funktioner är flexibla verktyg inom programmering. Du kan ändra och förbättra dem för att passa olika behov. I detta kapitel lär du dig hur du kan göra funktioner mer användbara genom att använda standardargument och nyckelordsargument.

Vi tittar på ett enkelt exempel från en livsmedelsbutik för att visa hur du kan modifiera funktioner för att göra dem mer hjälpsamma:

Standardargument

Standardargument är en användbar funktion i Python som gör det möjligt att ange standardvärden för funktionsparametrar.

I funktionen apply_discount() är parametern discount satt till 0.10 som standard. Det innebär att funktionen automatiskt tillämpar en 10% rabatt om inget annat anges. Som visas i variabeln default_discount_price kan vi anropa funktionen med endast parametern price.

Om det behövs kan vi dock åsidolägga standardvärdet genom att ange både price och en egen discount (t.ex. 0.20 för 20%) som visas med variabeln 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

Nyckelordargument

Nyckelordargument i Python möjliggör att skicka argument genom att uttryckligen namnge varje parameter, vilket gör funktionsanropen mer läsbara och flexibla. Detta är särskilt användbart när en funktion har flera parametrar eller när ordningen på argumenten kan vara förvirrande.

I följande exempel anges både price och discount, medan parametern tax behåller sitt standardvärde, vilket ger flexibilitet utan att kompromissa med tydligheten.

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
Note
Observera

Ordningen på parametrarna spelar ingen roll när de skickas med nyckelordargument.

Uppgift

Swipe to start coding

Skapa ett enkelt kassasystem för en livsmedelsbutik med hjälp av standardvärden och nyckelordsargument.

  • Definiera apply_discount(price, discount=0.10) → Returnerar priset efter rabatt (10 % som standard).
  • Definiera add_tax(price, tax=0.05) → Returnerar priset efter att moms har lagts till (5 % som standard).
  • Definiera final_price(price, discount=0.10, tax=0.05) → Använder först apply_discount(), sedan add_tax(), och returnerar det slutliga resultatet.

Kör sedan två exempel:

  • Anropa final_price(50) med standardvärden.
  • Anropa final_price(50, tax=0.08) med en anpassad momssats via ett nyckelordsargument.

Utdatakrav

Skriv ut exakt dessa två rader (avrundat till 2 decimaler):

  • Final price with default discount and tax: $<value>
  • Final price with custom tax: $<value>

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 6. Kapitel 6
single

single

some-alt