Modifisere Funksjoner
I programmering er funksjoner dynamiske verktøy som kan tilpasse seg forskjellige situasjoner og behov. De er ikke bare faste kodeblokker. Du kan forbedre funksjoner for å gjøre dem mer allsidige og brukervennlige i ulike sammenhenger.
I dette kapittelet skal vi utforske noen viktige teknikker for å modifisere funksjoner, som å bruke standardargumenter og nøkkelordargumenter.
La oss starte med et enkelt eksempel på modifisering av funksjoner for å forbedre deres nytte i vårt dagligvarebutikkstyringssystem:
Standardargumenter
Standardargumenter er en nyttig funksjon i Python som lar deg spesifisere standardverdier for funksjonsparametere.
I apply_discount()
-funksjonen er discount
-parameteren satt til 0.10
som standard. Dette betyr at funksjonen automatisk vil anvende en 10% rabatt med mindre annet er spesifisert. Som vist i default_discount_price
-variabelen, kan vi kalle funksjonen med bare price
-parameteren.
Men hvis nødvendig, kan vi overstyre standardverdien ved å sende både price
og en tilpasset discount
(f.eks. 0.20
for 20%) som demonstrert med custom_discount_price
-variabelen.
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}")
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 det følgende eksempelet er både price
og discount
spesifisert, mens tax
-parameteren forblir på sin standardverdi, noe som gir fleksibilitet uten å gå på bekostning av klarhet.
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}")
Merk
Rekkefølgen på parametere spiller ingen rolle når de sendes med nøkkelordargumenter.
Swipe to start coding
Lag funksjoner for å beregne den totale kostnaden av et produkt ved å bruke en rabatt og skatt, ved å bruke nøkkelordargumenter og standardverdier for fleksibilitet.
- Definer
apply_discount(price, discount=0.05)
→ Returnerer prisen etter å ha brukt rabatten. - Definer
apply_tax(price, tax=0.07)
→ Returnerer prisen etter å ha lagt til skatten. - Definer
calculate_total(price, discount=0.05, tax=0.07)
→ Brukerapply_discount()
ogapply_tax()
for å returnere totalprisen med både rabatt og skatt brukt. - Kall
calculate_total(120)
ved å bruke standard rabatt og skatt. - Kall
calculate_total(100, discount=0.10, tax=0.08)
ved å bruke tilpassede verdier via nøkkelordargumenter.
Krav til utdata
- Skriv ut resultatet med standardverdier:
Total kostnad med standard rabatt og skatt: $<total_price_default>
- Skriv ut resultatet med tilpassede verdier:
Total kostnad med tilpasset rabatt og skatt: $<total_price_custom>
Merk
Når du definerer funksjoner, plasser nødvendige parametere først, etterfulgt av parametere med standardverdier.
Når du kaller funksjoner med nøkkelordargumenter, bør posisjonsargumenter komme før nøkkelordargumenter.
Løsning
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 2.17
Modifisere Funksjoner
Sveip for å vise menyen
I programmering er funksjoner dynamiske verktøy som kan tilpasse seg forskjellige situasjoner og behov. De er ikke bare faste kodeblokker. Du kan forbedre funksjoner for å gjøre dem mer allsidige og brukervennlige i ulike sammenhenger.
I dette kapittelet skal vi utforske noen viktige teknikker for å modifisere funksjoner, som å bruke standardargumenter og nøkkelordargumenter.
La oss starte med et enkelt eksempel på modifisering av funksjoner for å forbedre deres nytte i vårt dagligvarebutikkstyringssystem:
Standardargumenter
Standardargumenter er en nyttig funksjon i Python som lar deg spesifisere standardverdier for funksjonsparametere.
I apply_discount()
-funksjonen er discount
-parameteren satt til 0.10
som standard. Dette betyr at funksjonen automatisk vil anvende en 10% rabatt med mindre annet er spesifisert. Som vist i default_discount_price
-variabelen, kan vi kalle funksjonen med bare price
-parameteren.
Men hvis nødvendig, kan vi overstyre standardverdien ved å sende både price
og en tilpasset discount
(f.eks. 0.20
for 20%) som demonstrert med custom_discount_price
-variabelen.
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}")
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 det følgende eksempelet er både price
og discount
spesifisert, mens tax
-parameteren forblir på sin standardverdi, noe som gir fleksibilitet uten å gå på bekostning av klarhet.
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}")
Merk
Rekkefølgen på parametere spiller ingen rolle når de sendes med nøkkelordargumenter.
Swipe to start coding
Lag funksjoner for å beregne den totale kostnaden av et produkt ved å bruke en rabatt og skatt, ved å bruke nøkkelordargumenter og standardverdier for fleksibilitet.
- Definer
apply_discount(price, discount=0.05)
→ Returnerer prisen etter å ha brukt rabatten. - Definer
apply_tax(price, tax=0.07)
→ Returnerer prisen etter å ha lagt til skatten. - Definer
calculate_total(price, discount=0.05, tax=0.07)
→ Brukerapply_discount()
ogapply_tax()
for å returnere totalprisen med både rabatt og skatt brukt. - Kall
calculate_total(120)
ved å bruke standard rabatt og skatt. - Kall
calculate_total(100, discount=0.10, tax=0.08)
ved å bruke tilpassede verdier via nøkkelordargumenter.
Krav til utdata
- Skriv ut resultatet med standardverdier:
Total kostnad med standard rabatt og skatt: $<total_price_default>
- Skriv ut resultatet med tilpassede verdier:
Total kostnad med tilpasset rabatt og skatt: $<total_price_custom>
Merk
Når du definerer funksjoner, plasser nødvendige parametere først, etterfulgt av parametere med standardverdier.
Når du kaller funksjoner med nøkkelordargumenter, bør posisjonsargumenter komme før nøkkelordargumenter.
Løsning
Takk for tilbakemeldingene dine!
Awesome!
Completion rate improved to 2.17single