Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Funktioiden Muokkaaminen | Funktiot
Johdatus Pythoniin

Pyyhkäise näyttääksesi valikon

book
Funktioiden Muokkaaminen

Ohjelmoinnissa funktiot ovat dynaamisia työkaluja, jotka voivat mukautua erilaisiin tilanteisiin ja tarpeisiin. Ne eivät ole vain kiinteitä koodilohkoja. Funktioita voidaan kehittää, jotta niistä tulee monipuolisempia ja käyttäjäystävällisempiä eri yhteyksissä.

Tässä luvussa tarkastelemme tärkeitä tapoja muokata funktioita, kuten oletusargumenttien ja avainsana-argumenttien käyttöä.

Aloitetaan yksinkertaisella esimerkillä siitä, miten funktioita voidaan muokata parantamaan niiden hyödyllisyyttä ruokakaupan hallintajärjestelmässämme:

Oletusargumentit

Oletusargumentit ovat hyödyllinen ominaisuus Pythonissa, jonka avulla voit määrittää oletusarvot funktion parametreille.

apply_discount()-funktiossa discount-parametrin oletusarvona on 0.10. Tämä tarkoittaa, että funktio käyttää automaattisesti 10 %:n alennusta, ellei toisin määritetä. Kuten default_discount_price -muuttujassa nähdään, voimme kutsua funktiota pelkällä price-parametrilla.

Tarvittaessa voimme kuitenkin ylikirjoittaa oletusarvon antamalla sekä price- että mukautetun discount-arvon (esim. 0.20 20 %:n alennukselle), kuten custom_discount_price -muuttujassa on esitetty.

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

Avainsana-argumentit

Avainsana-argumentit Pythonissa mahdollistavat argumenttien välittämisen nimeämällä jokainen parametri erikseen, mikä tekee funktiokutsuista luettavampia ja joustavampia. Tämä on erityisen hyödyllistä, kun funktiolla on useita parametreja tai kun argumenttien järjestys voi olla hämmentävä.

Seuraavassa esimerkissä sekä price että discount määritellään, kun taas tax-parametri säilyttää oletusarvonsa, tarjoten joustavuutta ilman, että selkeys kärsii.

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

Huom

Parametrien järjestyksellä ei ole merkitystä, kun ne välitetään avainsana-argumentteina.

Tehtävä

Swipe to start coding

Luo funktioita, jotka laskevat tuotteen kokonaiskustannuksen soveltamalla alennusta ja veroa käyttäen avainsana-argumentteja ja oletusarvoja joustavuuden takaamiseksi.

  • Määrittele apply_discount(price, discount=0.05)
    → Palauttaa hinnan alennuksen jälkeen.
  • Määrittele apply_tax(price, tax=0.07)
    → Palauttaa hinnan veron lisäämisen jälkeen.
  • Määrittele calculate_total(price, discount=0.05, tax=0.07)
    → Käyttää funktioita apply_discount() ja apply_tax() ja palauttaa kokonaishinnan, johon on sovellettu sekä alennus että vero.
  • Kutsu calculate_total(120) käyttäen oletusalennusta ja -veroa.
  • Kutsu calculate_total(100, discount=0.10, tax=0.08) käyttäen mukautettuja arvoja avainsana-argumenteilla.

Tulostusvaatimukset

  • Tulosta tulos oletusarvoilla:
    Total cost with default discount and tax: $<total_price_default>
  • Tulosta tulos mukautetuilla arvoilla:
    Total cost with custom discount and tax: $<total_price_custom>

Huom

Funktioita määriteltäessä pakolliset parametrit sijoitetaan ensin, sitten parametrit, joilla on oletusarvot.

Funktioita kutsuttaessa sijoitetut argumentit tulee antaa ennen avainsana-argumentteja.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 6. Luku 6
Pahoittelemme, että jotain meni pieleen. Mitä tapahtui?

Kysy tekoälyä

expand
ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

book
Funktioiden Muokkaaminen

Ohjelmoinnissa funktiot ovat dynaamisia työkaluja, jotka voivat mukautua erilaisiin tilanteisiin ja tarpeisiin. Ne eivät ole vain kiinteitä koodilohkoja. Funktioita voidaan kehittää, jotta niistä tulee monipuolisempia ja käyttäjäystävällisempiä eri yhteyksissä.

Tässä luvussa tarkastelemme tärkeitä tapoja muokata funktioita, kuten oletusargumenttien ja avainsana-argumenttien käyttöä.

Aloitetaan yksinkertaisella esimerkillä siitä, miten funktioita voidaan muokata parantamaan niiden hyödyllisyyttä ruokakaupan hallintajärjestelmässämme:

Oletusargumentit

Oletusargumentit ovat hyödyllinen ominaisuus Pythonissa, jonka avulla voit määrittää oletusarvot funktion parametreille.

apply_discount()-funktiossa discount-parametrin oletusarvona on 0.10. Tämä tarkoittaa, että funktio käyttää automaattisesti 10 %:n alennusta, ellei toisin määritetä. Kuten default_discount_price -muuttujassa nähdään, voimme kutsua funktiota pelkällä price-parametrilla.

Tarvittaessa voimme kuitenkin ylikirjoittaa oletusarvon antamalla sekä price- että mukautetun discount-arvon (esim. 0.20 20 %:n alennukselle), kuten custom_discount_price -muuttujassa on esitetty.

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

Avainsana-argumentit

Avainsana-argumentit Pythonissa mahdollistavat argumenttien välittämisen nimeämällä jokainen parametri erikseen, mikä tekee funktiokutsuista luettavampia ja joustavampia. Tämä on erityisen hyödyllistä, kun funktiolla on useita parametreja tai kun argumenttien järjestys voi olla hämmentävä.

Seuraavassa esimerkissä sekä price että discount määritellään, kun taas tax-parametri säilyttää oletusarvonsa, tarjoten joustavuutta ilman, että selkeys kärsii.

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

Huom

Parametrien järjestyksellä ei ole merkitystä, kun ne välitetään avainsana-argumentteina.

Tehtävä

Swipe to start coding

Luo funktioita, jotka laskevat tuotteen kokonaiskustannuksen soveltamalla alennusta ja veroa käyttäen avainsana-argumentteja ja oletusarvoja joustavuuden takaamiseksi.

  • Määrittele apply_discount(price, discount=0.05)
    → Palauttaa hinnan alennuksen jälkeen.
  • Määrittele apply_tax(price, tax=0.07)
    → Palauttaa hinnan veron lisäämisen jälkeen.
  • Määrittele calculate_total(price, discount=0.05, tax=0.07)
    → Käyttää funktioita apply_discount() ja apply_tax() ja palauttaa kokonaishinnan, johon on sovellettu sekä alennus että vero.
  • Kutsu calculate_total(120) käyttäen oletusalennusta ja -veroa.
  • Kutsu calculate_total(100, discount=0.10, tax=0.08) käyttäen mukautettuja arvoja avainsana-argumenteilla.

Tulostusvaatimukset

  • Tulosta tulos oletusarvoilla:
    Total cost with default discount and tax: $<total_price_default>
  • Tulosta tulos mukautetuilla arvoilla:
    Total cost with custom discount and tax: $<total_price_custom>

Huom

Funktioita määriteltäessä pakolliset parametrit sijoitetaan ensin, sitten parametrit, joilla on oletusarvot.

Funktioita kutsuttaessa sijoitetut argumentit tulee antaa ennen avainsana-argumentteja.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 6. Luku 6
Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Pahoittelemme, että jotain meni pieleen. Mitä tapahtui?
some-alt