Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Modifisere Funksjoner | Funksjoner
Introduksjon til Python

Sveip for å vise menyen

book
Modifisere Funksjoner

I programmering er funksjoner dynamiske verktøy som kan tilpasses ulike situasjoner og behov. De er ikke bare faste kodeblokker. Du kan forbedre funksjoner for å gjøre dem mer allsidige og brukervennlige i forskjellige sammenhenger.

I dette kapittelet skal vi utforske noen viktige teknikker for å endre funksjoner, som å bruke standardargumenter og nøkkelordargumenter.

La oss begynne med et enkelt eksempel på modifisering av funksjoner for å øke nytteverdien i vårt dagligvarebutikk-administrasjonssystem:

Standardargumenter

Standardargumenter er en nyttig funksjon i Python som lar deg angi standardverdier for funksjonsparametere.

I apply_discount()-funksjonen er parameteren discount satt til 0.10 som standard. Dette betyr at funksjonen automatisk vil bruke en 10 % rabatt med mindre noe annet er spesifisert. Som vist i variabelen default_discount_price, kan vi kalle funksjonen kun med parameteren price.

Om nødvendig kan vi overstyre standardverdien ved å sende inn både price og en egendefinert discount (for eksempel 0.20 for 20 %) slik det demonstreres med variabelen 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

Nøkkelordargumenter

Nøkkelordargumenter i Python lar deg sende argumenter ved å eksplisitt navngi hver parameter, noe som gjør funksjonskallene dine mer lesbare og fleksible. Dette er spesielt nyttig når en funksjon har flere parametere eller når rekkefølgen på argumentene kan være forvirrende.

I eksempelet under er både price og discount spesifisert, mens parameteren tax beholder sin standardverdi, noe som gir fleksibilitet uten å gå på bekostning av tydelighet.

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

Merk

Rekkefølgen på parametere spiller ingen rolle når de sendes med nøkkelordargumenter.

Oppgave

Swipe to start coding

Lag funksjoner for å beregne totalprisen på et produkt ved å bruke rabatt og mva, med nøkkelordargumenter og standardverdier for fleksibilitet.

  • Definer apply_discount(price, discount=0.05)
    → Returnerer prisen etter at rabatten er trukket fra.
  • Definer apply_tax(price, tax=0.07)
    → Returnerer prisen etter at mva er lagt til.
  • Definer calculate_total(price, discount=0.05, tax=0.07)
    → Bruker apply_discount() og apply_tax() for å returnere totalprisen med både rabatt og mva.
  • Kall calculate_total(120) med standard rabatt og mva.
  • Kall calculate_total(100, discount=0.10, tax=0.08) med egendefinerte verdier via nøkkelordargumenter.

Krav til utdata

  • Skriv ut resultatet med standardverdier:
    Total cost with default discount and tax: $<total_price_default>
  • Skriv ut resultatet med egendefinerte verdier:
    Total cost with custom discount and tax: $<total_price_custom>

Merk

Når du definerer funksjoner, plasser påkrevde parametere først, etterfulgt av parametere med standardverdier.

Ved kall av funksjoner med nøkkelordargumenter, skal posisjonsargumenter komme før nøkkelordargumenter.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 6. Kapittel 6

Spør AI

expand
ChatGPT

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

book
Modifisere Funksjoner

I programmering er funksjoner dynamiske verktøy som kan tilpasses ulike situasjoner og behov. De er ikke bare faste kodeblokker. Du kan forbedre funksjoner for å gjøre dem mer allsidige og brukervennlige i forskjellige sammenhenger.

I dette kapittelet skal vi utforske noen viktige teknikker for å endre funksjoner, som å bruke standardargumenter og nøkkelordargumenter.

La oss begynne med et enkelt eksempel på modifisering av funksjoner for å øke nytteverdien i vårt dagligvarebutikk-administrasjonssystem:

Standardargumenter

Standardargumenter er en nyttig funksjon i Python som lar deg angi standardverdier for funksjonsparametere.

I apply_discount()-funksjonen er parameteren discount satt til 0.10 som standard. Dette betyr at funksjonen automatisk vil bruke en 10 % rabatt med mindre noe annet er spesifisert. Som vist i variabelen default_discount_price, kan vi kalle funksjonen kun med parameteren price.

Om nødvendig kan vi overstyre standardverdien ved å sende inn både price og en egendefinert discount (for eksempel 0.20 for 20 %) slik det demonstreres med variabelen 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

Nøkkelordargumenter

Nøkkelordargumenter i Python lar deg sende argumenter ved å eksplisitt navngi hver parameter, noe som gjør funksjonskallene dine mer lesbare og fleksible. Dette er spesielt nyttig når en funksjon har flere parametere eller når rekkefølgen på argumentene kan være forvirrende.

I eksempelet under er både price og discount spesifisert, mens parameteren tax beholder sin standardverdi, noe som gir fleksibilitet uten å gå på bekostning av tydelighet.

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

Merk

Rekkefølgen på parametere spiller ingen rolle når de sendes med nøkkelordargumenter.

Oppgave

Swipe to start coding

Lag funksjoner for å beregne totalprisen på et produkt ved å bruke rabatt og mva, med nøkkelordargumenter og standardverdier for fleksibilitet.

  • Definer apply_discount(price, discount=0.05)
    → Returnerer prisen etter at rabatten er trukket fra.
  • Definer apply_tax(price, tax=0.07)
    → Returnerer prisen etter at mva er lagt til.
  • Definer calculate_total(price, discount=0.05, tax=0.07)
    → Bruker apply_discount() og apply_tax() for å returnere totalprisen med både rabatt og mva.
  • Kall calculate_total(120) med standard rabatt og mva.
  • Kall calculate_total(100, discount=0.10, tax=0.08) med egendefinerte verdier via nøkkelordargumenter.

Krav til utdata

  • Skriv ut resultatet med standardverdier:
    Total cost with default discount and tax: $<total_price_default>
  • Skriv ut resultatet med egendefinerte verdier:
    Total cost with custom discount and tax: $<total_price_custom>

Merk

Når du definerer funksjoner, plasser påkrevde parametere først, etterfulgt av parametere med standardverdier.

Ved kall av funksjoner med nøkkelordargumenter, skal posisjonsargumenter komme før nøkkelordargumenter.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 6. Kapittel 6
Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Vi beklager at noe gikk galt. Hva skjedde?
some-alt