Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Sisäkkäiset ja Monimutkaiset Ehtolauseet | Ehtolauseet
Practice
Projects
Quizzes & Challenges
Visat
Challenges
/
Johdatus Pythoniin

bookSisäkkäiset ja Monimutkaiset Ehtolauseet

Todellisissa tilanteissa, kuten päivittäistavarakaupan hallinnassa, päätöksenteko perustuu usein useisiin tekijöihin. Sisäkkäiset ja monimutkaiset ehtolauseet Pythonissa mahdollistavat tällaisten tilanteiden käsittelyn tarkistamalla useita ehtoja jäsennellysti.

Sisäkkäisen if-else-rakenteen kirjoittamiseksi Pythonissa sijoita yksi if-else-lohko toisen sisään. Käytä kaksoispistettä (:) jokaisen if-, elif- tai else-avainsanan jälkeen osoittamaan koodilohkon alkua. Sisennä koodi jokaisen lohkon sisällä osoittaaksesi, mitkä lauseet kuuluvat mihinkin ehtoon. Tämä rakenne pitää logiikan selkeänä ja varmistaa, että koodi toimii tarkoitetulla tavalla.

if condition:
    if nested_condition:
        code_block
    else:
        code_block
else:
    code_block # or another nested condition

Tässä on selkeä esimerkki siitä, miten sisäkkäisiä if-else-rakenteita käytetään Pythonissa päivittäistavarakauppa-teeman mukaisesti. Huomaa kaksoispisteiden (:) ja sisennyksen käyttö päätöksenteon rakenteessa:

12345678910
product_type = "Perishable" days_in_stock = 6 if product_type == "Perishable": if days_in_stock > 5: print("Product is old - Apply 50% discount") else: print("Product is fresh - Full price") else: print("Non-perishable item - No freshness check needed")
copy

Tämä koodi tarkistaa, onko tuote helposti pilaantuva. Jos on, tarkistetaan lisäksi, kuinka monta päivää tuote on ollut varastossa, jotta voidaan päättää alennuksesta. Sisennys ja kaksoispisteet ovat olennaisia määriteltäessä, mihin ehtoon kukin koodirivi kuuluu.

Tarkastellaan tilannetta, jossa täytyy päättää, miten eri tuotteita käsitellään niiden tyypin ja varastossa olevien yksiköiden määrän perusteella. Esimerkiksi halutaan ilmoittaa henkilökunnalle, kun helposti pilaantuva tuote on vähissä tai kun ei-pilaantuva tuote on loppunut varastosta. Näin voit käyttää sisäkkäisiä if-else-lauseita tämän logiikan selkeään järjestämiseen:

1234567891011121314151617
product_type = "Non-perishable" days_in_stock = 12 stock_quantity = 3 if product_type == "Perishable": if days_in_stock > 5: print("Perishable and old - Apply 50% discount") elif stock_quantity < 5: print("Perishable and low stock - Consider restocking") else: print("Perishable and fresh - Full price") else: if stock_quantity < 5: print("Non-perishable and low stock - Restock soon") else: print("Non-perishable and stock is sufficient")
copy

Tässä esimerkissä tarkistetaan product_type. Jos tuote on helposti pilaantuva, tarkistetaan lisäksi varastotaso ja tulostetaan tarvittaessa ilmoitus täydennystarpeesta. Jos tuote ei ole helposti pilaantuva, tarkistetaan onko varasto tyhjä ja annetaan tilausilmoitus. Sisäkkäisten if-else-lauseiden käyttö mahdollistaa selkeät, vaiheittaiset päätökset useiden tekijöiden perusteella.

Tehtävä

Swipe to start coding

Hallitset päivittäistavarakaupan varastoa. Tehtävänäsi on kirjoittaa sisäkkäinen if-else-lause, joka päättää tulostettavan viestin seuraavien kriteerien perusteella:

  • Jos tuote on herkku (Perishable):
    • Jos se on ollut varastossa yli 7 päivää, tulosta Perishable and very old - Apply 70% discount.
    • Muussa tapauksessa, jos varastomäärä on alle 3, tulosta Perishable and low stock - Restock immediately.
    • Muussa tapauksessa tulosta Perishable and fresh - Full price.
  • Jos tuote on ei-herkku (Non-perishable):
    • Jos varastomäärä on 0, tulosta Non-perishable and out of stock - Reorder now.
    • Muussa tapauksessa tulosta Non-perishable and stock is sufficient.

Kirjoita sisäkkäinen if-else-lause käyttäen muuttujia product_type, days_in_stock ja stock_quantity. Testaa koodiasi suorittamalla se annetuilla muuttujien arvoilla ja varmista, että se tulostaa oikean viestin jokaisessa tilanteessa.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 7
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

close

bookSisäkkäiset ja Monimutkaiset Ehtolauseet

Pyyhkäise näyttääksesi valikon

Todellisissa tilanteissa, kuten päivittäistavarakaupan hallinnassa, päätöksenteko perustuu usein useisiin tekijöihin. Sisäkkäiset ja monimutkaiset ehtolauseet Pythonissa mahdollistavat tällaisten tilanteiden käsittelyn tarkistamalla useita ehtoja jäsennellysti.

Sisäkkäisen if-else-rakenteen kirjoittamiseksi Pythonissa sijoita yksi if-else-lohko toisen sisään. Käytä kaksoispistettä (:) jokaisen if-, elif- tai else-avainsanan jälkeen osoittamaan koodilohkon alkua. Sisennä koodi jokaisen lohkon sisällä osoittaaksesi, mitkä lauseet kuuluvat mihinkin ehtoon. Tämä rakenne pitää logiikan selkeänä ja varmistaa, että koodi toimii tarkoitetulla tavalla.

if condition:
    if nested_condition:
        code_block
    else:
        code_block
else:
    code_block # or another nested condition

Tässä on selkeä esimerkki siitä, miten sisäkkäisiä if-else-rakenteita käytetään Pythonissa päivittäistavarakauppa-teeman mukaisesti. Huomaa kaksoispisteiden (:) ja sisennyksen käyttö päätöksenteon rakenteessa:

12345678910
product_type = "Perishable" days_in_stock = 6 if product_type == "Perishable": if days_in_stock > 5: print("Product is old - Apply 50% discount") else: print("Product is fresh - Full price") else: print("Non-perishable item - No freshness check needed")
copy

Tämä koodi tarkistaa, onko tuote helposti pilaantuva. Jos on, tarkistetaan lisäksi, kuinka monta päivää tuote on ollut varastossa, jotta voidaan päättää alennuksesta. Sisennys ja kaksoispisteet ovat olennaisia määriteltäessä, mihin ehtoon kukin koodirivi kuuluu.

Tarkastellaan tilannetta, jossa täytyy päättää, miten eri tuotteita käsitellään niiden tyypin ja varastossa olevien yksiköiden määrän perusteella. Esimerkiksi halutaan ilmoittaa henkilökunnalle, kun helposti pilaantuva tuote on vähissä tai kun ei-pilaantuva tuote on loppunut varastosta. Näin voit käyttää sisäkkäisiä if-else-lauseita tämän logiikan selkeään järjestämiseen:

1234567891011121314151617
product_type = "Non-perishable" days_in_stock = 12 stock_quantity = 3 if product_type == "Perishable": if days_in_stock > 5: print("Perishable and old - Apply 50% discount") elif stock_quantity < 5: print("Perishable and low stock - Consider restocking") else: print("Perishable and fresh - Full price") else: if stock_quantity < 5: print("Non-perishable and low stock - Restock soon") else: print("Non-perishable and stock is sufficient")
copy

Tässä esimerkissä tarkistetaan product_type. Jos tuote on helposti pilaantuva, tarkistetaan lisäksi varastotaso ja tulostetaan tarvittaessa ilmoitus täydennystarpeesta. Jos tuote ei ole helposti pilaantuva, tarkistetaan onko varasto tyhjä ja annetaan tilausilmoitus. Sisäkkäisten if-else-lauseiden käyttö mahdollistaa selkeät, vaiheittaiset päätökset useiden tekijöiden perusteella.

Tehtävä

Swipe to start coding

Hallitset päivittäistavarakaupan varastoa. Tehtävänäsi on kirjoittaa sisäkkäinen if-else-lause, joka päättää tulostettavan viestin seuraavien kriteerien perusteella:

  • Jos tuote on herkku (Perishable):
    • Jos se on ollut varastossa yli 7 päivää, tulosta Perishable and very old - Apply 70% discount.
    • Muussa tapauksessa, jos varastomäärä on alle 3, tulosta Perishable and low stock - Restock immediately.
    • Muussa tapauksessa tulosta Perishable and fresh - Full price.
  • Jos tuote on ei-herkku (Non-perishable):
    • Jos varastomäärä on 0, tulosta Non-perishable and out of stock - Reorder now.
    • Muussa tapauksessa tulosta Non-perishable and stock is sufficient.

Kirjoita sisäkkäinen if-else-lause käyttäen muuttujia product_type, days_in_stock ja stock_quantity. Testaa koodiasi suorittamalla se annetuilla muuttujien arvoilla ja varmista, että se tulostaa oikean viestin jokaisessa tilanteessa.

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 3. Luku 7
single

single

some-alt