Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Kombinasjon av Posisjonelle og Navngitte Vilkårlige Argumenter | Vilkårlige Argumenter
Python Funksjoner Veiledning

bookKombinasjon av Posisjonelle og Navngitte Vilkårlige Argumenter

Tenk deg en funksjon som beregner den totale kostnaden for flere varer, samtidig som du kan sende inn et vilkårlig antall priser og valgfrie nøkkelordinnstillinger som rabatter eller avgifter.

12345678910111213141516171819202122232425
def calculate_total_cost(*prices, **settings): subtotal = sum(prices) discount = settings.get("discount", 0) tax = settings.get("tax", 0) discount_amount = subtotal * (discount / 100) taxed_amount = (subtotal - discount_amount) * (1 + tax / 100) print(f"Subtotal: ${subtotal:.2f}") if discount > 0: print(f"Discount: {discount}% (-${discount_amount:.2f})") else: print("No discount applied.") if tax > 0: print(f"Tax: {tax}% (+${taxed_amount - (subtotal - discount_amount):.2f})") print(f"Final total: ${taxed_amount:.2f}") print() # Examples of using the function calculate_total_cost(1000, 250, 50) calculate_total_cost(1200, 800, discount=10) calculate_total_cost(500, 750, 250, discount=5, tax=8)
copy

Regler for å kombinere vilkårlige argumenter

Posisjonelle vilkårlige argumenter (*args)

*args samler alle ekstra posisjonelle argumenter i en tuple. I dette eksempelet kan funksjonen ta imot et vilkårlig antall varepriser uten å måtte definere dem eksplisitt.

For eksempel:

calculate_total_cost(500, 250, 100)

Her blir *prices til (500, 250, 100).

Vilkårlige nøkkelordargumenter (**kwargs)

**kwargs samler alle navngitte (nøkkelord) argumenter i en ordbok. Dette gjør at funksjonen kan ta imot ekstra navngitte innstillinger som discount eller tax, selv om de ikke var forhåndsdefinert.

For eksempel:

calculate_total_cost(1000, 500, discount=10, tax=5)

Her blir **settings til {'discount': 10, 'tax': 5}.

Kombinere begge

Du kan bruke både *args og **kwargs i samme funksjon for å oppnå maksimal fleksibilitet — slik at du kan håndtere et vilkårlig antall posisjonelle verdier og enhver kombinasjon av navngitte innstillinger.

question mark

Hva er kombinasjonen av posisjonelle og vilkårlige nøkkelordargumenter i funksjoner?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 3

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Suggested prompts:

Can you explain how the function handles both discounts and taxes together?

What happens if I don't provide any keyword arguments?

Can you show more examples of calling this function with different arguments?

Awesome!

Completion rate improved to 4.17

bookKombinasjon av Posisjonelle og Navngitte Vilkårlige Argumenter

Sveip for å vise menyen

Tenk deg en funksjon som beregner den totale kostnaden for flere varer, samtidig som du kan sende inn et vilkårlig antall priser og valgfrie nøkkelordinnstillinger som rabatter eller avgifter.

12345678910111213141516171819202122232425
def calculate_total_cost(*prices, **settings): subtotal = sum(prices) discount = settings.get("discount", 0) tax = settings.get("tax", 0) discount_amount = subtotal * (discount / 100) taxed_amount = (subtotal - discount_amount) * (1 + tax / 100) print(f"Subtotal: ${subtotal:.2f}") if discount > 0: print(f"Discount: {discount}% (-${discount_amount:.2f})") else: print("No discount applied.") if tax > 0: print(f"Tax: {tax}% (+${taxed_amount - (subtotal - discount_amount):.2f})") print(f"Final total: ${taxed_amount:.2f}") print() # Examples of using the function calculate_total_cost(1000, 250, 50) calculate_total_cost(1200, 800, discount=10) calculate_total_cost(500, 750, 250, discount=5, tax=8)
copy

Regler for å kombinere vilkårlige argumenter

Posisjonelle vilkårlige argumenter (*args)

*args samler alle ekstra posisjonelle argumenter i en tuple. I dette eksempelet kan funksjonen ta imot et vilkårlig antall varepriser uten å måtte definere dem eksplisitt.

For eksempel:

calculate_total_cost(500, 250, 100)

Her blir *prices til (500, 250, 100).

Vilkårlige nøkkelordargumenter (**kwargs)

**kwargs samler alle navngitte (nøkkelord) argumenter i en ordbok. Dette gjør at funksjonen kan ta imot ekstra navngitte innstillinger som discount eller tax, selv om de ikke var forhåndsdefinert.

For eksempel:

calculate_total_cost(1000, 500, discount=10, tax=5)

Her blir **settings til {'discount': 10, 'tax': 5}.

Kombinere begge

Du kan bruke både *args og **kwargs i samme funksjon for å oppnå maksimal fleksibilitet — slik at du kan håndtere et vilkårlig antall posisjonelle verdier og enhver kombinasjon av navngitte innstillinger.

question mark

Hva er kombinasjonen av posisjonelle og vilkårlige nøkkelordargumenter i funksjoner?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 3
some-alt