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

bookFunktioiden Muokkaaminen

Funktiot ovat joustavia työkaluja ohjelmoinnissa. Niitä voi muokata ja parantaa erilaisiin tarpeisiin sopiviksi. Tässä luvussa opit, kuinka voit tehdä funktioista hyödyllisempiä käyttämällä oletusargumentteja ja avainsana-argumentteja.

Tarkastellaan yksinkertaista ruokakauppaesimerkkiä, joka havainnollistaa, miten funktioita voi muokata hyödyllisemmiksi:

Oletusargumentit

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

apply_discount()-funktiossa discount-parametrin oletusarvo 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ä oman discount-arvon (esim. 0.20 20 %:lle) 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

Avainsanaparametrit

Avainsanaparametrit 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
Note
Huomio

Parametrien järjestyksellä ei ole merkitystä, kun ne välitetään avainsanaparametreina.

Tehtävä

Swipe to start coding

Luo yksinkertainen kassajärjestelmä ruokakaupan tuotteelle käyttämällä oletusarvoja ja avainsana-argumentteja.

  • Määrittele apply_discount(price, discount=0.10) → Palauttaa hinnan alennuksen jälkeen (oletuksena 10 %).
  • Määrittele add_tax(price, tax=0.05) → Palauttaa hinnan veron lisäämisen jälkeen (oletuksena 5 %).
  • Määrittele final_price(price, discount=0.10, tax=0.05) → Käyttää ensin apply_discount(), sitten add_tax(), ja palauttaa lopullisen tuloksen.

Suorita sitten kaksi esimerkkiä:

  • Kutsu final_price(50) käyttäen oletusarvoja.
  • Kutsu final_price(50, tax=0.08) käyttäen mukautettua veroprosenttia avainsana-argumentilla.

Tulostusvaatimukset

Tulosta täsmälleen nämä kaksi riviä (pyöristettynä kahden desimaalin tarkkuudella):

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

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 6. Luku 6
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

close

bookFunktioiden Muokkaaminen

Pyyhkäise näyttääksesi valikon

Funktiot ovat joustavia työkaluja ohjelmoinnissa. Niitä voi muokata ja parantaa erilaisiin tarpeisiin sopiviksi. Tässä luvussa opit, kuinka voit tehdä funktioista hyödyllisempiä käyttämällä oletusargumentteja ja avainsana-argumentteja.

Tarkastellaan yksinkertaista ruokakauppaesimerkkiä, joka havainnollistaa, miten funktioita voi muokata hyödyllisemmiksi:

Oletusargumentit

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

apply_discount()-funktiossa discount-parametrin oletusarvo 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ä oman discount-arvon (esim. 0.20 20 %:lle) 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

Avainsanaparametrit

Avainsanaparametrit 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
Note
Huomio

Parametrien järjestyksellä ei ole merkitystä, kun ne välitetään avainsanaparametreina.

Tehtävä

Swipe to start coding

Luo yksinkertainen kassajärjestelmä ruokakaupan tuotteelle käyttämällä oletusarvoja ja avainsana-argumentteja.

  • Määrittele apply_discount(price, discount=0.10) → Palauttaa hinnan alennuksen jälkeen (oletuksena 10 %).
  • Määrittele add_tax(price, tax=0.05) → Palauttaa hinnan veron lisäämisen jälkeen (oletuksena 5 %).
  • Määrittele final_price(price, discount=0.10, tax=0.05) → Käyttää ensin apply_discount(), sitten add_tax(), ja palauttaa lopullisen tuloksen.

Suorita sitten kaksi esimerkkiä:

  • Kutsu final_price(50) käyttäen oletusarvoja.
  • Kutsu final_price(50, tax=0.08) käyttäen mukautettua veroprosenttia avainsana-argumentilla.

Tulostusvaatimukset

Tulosta täsmälleen nämä kaksi riviä (pyöristettynä kahden desimaalin tarkkuudella):

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

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
single

single

some-alt