Ehtolauseet Pythonissa

if, elif ja else valitsevat suoritettavan haaran. Vertailu == kysyy yhtäsuuruutta, kun taas = sijoittaa arvon.

Haarojen järjestys

Yhdestä if–elif–else-ketjusta suoritetaan vain ensimmäinen tosi haara, tai else jos mikään ehto ei täyty. Useat erilliset if-lauseet puolestaan tarkistetaan kaikki. else on valinnainen ja tulee viimeiseksi.

pisteet = 5
if pisteet < 0:
    print("Virhe")
elif pisteet < 5:
    print("Harjoittele lisää")
else:
    print("Hyväksytty")

Tulostus (ilman syötteiden kysymystekstejä):

Hyväksytty

Yhdistetyt ehdot

and vaatii molempien ehtojen täyttymistä, or vähintään yhden ja not kääntää totuusarvon. Arviointi oikosulkee: jälkimmäinen osa arvioidaan vain tarvittaessa. Sulut selventävät monimutkaisia ehtoja.

ika = 16
lupa = True
if ika >= 15 and lupa:
    print("Osallistuminen sallittu")
print(not lupa)
print(10 <= ika < 18)

Tulostus (ilman syötteiden kysymystekstejä):

Osallistuminen sallittu
False
True

Sisäkkäiset ehdot

Sisennys kertoo, mihin ehtoon else kuuluu. Sisäkkäinen ehto tarkistetaan vain ulomman haaran toteutuessa. Harjoittele rajakohdat: juuri alle rajan, rajalla ja juuri yli rajan.

nimi = "Aino"
pisteet = 8
if nimi == "Aino":
    if pisteet >= 5:
        print("Valmis")
    else:
        print("Kesken")
else:
    print("Toinen käyttäjä")

Tulostus (ilman syötteiden kysymystekstejä):

Valmis

Kokeile itse

Jos hyväksymisraja on 5, mitkä kolme pistemäärää testaisit ensimmäiseksi?

Vastaus ja perustelu

4, 5 ja 6. Erityisesti arvo 5 paljastaa virheen, jos >= on vahingossa kirjoitettu >.

Suorita koodiesimerkit yksi kerrallaan. Jokainen esimerkki sisältää tarvitsemansa määrittelyt. Vertaa omaa ennustettasi tulosteeseen ennen seuraavaan aiheeseen siirtymistä.

Katso aihevideo YouTubessa