Using Conditional Expressions in Python
Pythonissa joskus tarvitsemme määrittää muuttujalle eri arvoja tiettyjen ehtojen perusteella. Vaikka tämä voidaan tehdä käyttämällä tavallista if-else
-lausetta, on olemassa tiiviimpi ja elegantimpi tapa saavuttaa se—käyttämällä ternääristä operaattoria, joka tunnetaan myös nimellä ehdollinen lauseke. Tämä mahdollistaa ehdollisen logiikan kirjoittamisen yhdelle koodiriville.
Syntaksi ternääriselle operaattorille on seuraava:
python
Tämä syntaksi arvioi ehdon, ja jos se on True
, se määrittää true_value
; muuten se määrittää false_value
.
Esimerkki 1: Tavallinen if-else
-lause
Oletetaan, että haluamme määrittää käyttäjälle kuntoilustatuksen sen perusteella, kuinka monta askelta hän on kävellyt.
steps_taken = 8500 status = "" if steps_taken >= 10000: status = "Goal Reached" else: status = "Keep Going" print(status)
Esimerkki 2: Ternäärisen operaattorin käyttö
Voimme saavuttaa saman tuloksen käyttämällä ternääristä operaattoria vain yhdellä rivillä:
steps_taken = 8500 status = "Goal Reached" if steps_taken >= 10000 else "Keep Going" print(status)
Milloin käyttää:
Ternäärinen operaattori on tehokkain, kun ehto on yksinkertainen ja arvot määritetään sen perusteella. Jos logiikka on monimutkaisempaa, on parempi pysyä täydellisessä if-else
-lauseessa selkeyden säilyttämiseksi.
Swipe to start coding
Rakennat kuntoiluseurantasovellusta, joka muistuttaa käyttäjiä siitä, ovatko he saavuttaneet päivittäisen vedenkulutustavoitteensa. Ohjelman tulee tarkistaa käyttäjän vedenkulutus ja antaa sopivaa palautetta.
- Käytä ternääristä operaattoria oikean viestin määrittämiseen yhdellä koodirivillä.
- Jos käyttäjä on kuluttanut
2
litraa tai enemmän, tallenna viesti:"You've met your hydration goal!"
. - Käytä
true_message
-muuttujaa. - Jos käyttäjä on kuluttanut alle
2
litraa, tallenna viesti:"Drink more water to reach your goal."
. - Käytä
false_message
-muuttujaa. - Tallenna viesti muuttujaan myöhempää käyttöä varten.
Ratkaisu
Kiitos palautteestasi!