Ehtolausekkeet
Tässä luvussa perehdytään yhteen Python-ohjelmoinnin perustavanlaatuisimmista osa-alueista — ehtoilmauksiin, joissa käytetään if
, else
ja elif
-operaattoreita.
Näiden operaattoreiden avulla voit suorittaa eri koodilohkoja tiettyjen ehtojen perusteella, mikä antaa mahdollisuuden tehdä päätöksiä ohjelman sisällä dynaamisesti. Näiden ilmausten ymmärtäminen on olennaista sovellusten kehittämisessä, jotta ne voivat reagoida tehokkaasti erilaisiin syötteisiin ja tilanteisiin.
Katso, kuinka Alex havainnollistaa näiden ehtoilmausten monipuolisuutta:
if
-lause arvioi ehdon ja suorittaa koodilohkon, jos ehto on True
. Jos ehto ei ole True
, else
- ja elif
- (lyhenne sanoista "else if") lauseilla voidaan määrittää lisäehtoja, joiden perusteella suoritetaan eri koodia.
Näin ne toimivat:
if
Ensisijainen ehtolause arvioi, onko ehto True
. Se aloittaa ehtosarjan. if
-lause voi esiintyä vain kerran sarjan alussa. Jos ehto arvioituu True
:ksi, sisennetty koodilohko if
-lauseen jälkeen suoritetaan.
elif
Lyhenne sanoista "else if", elif
-lause tarjoaa lisäehtoja tarkistettavaksi, jos alkuperäinen if
tai jokin aiempi elif
-ehto oli False
. Voit käyttää useita elif
-lauseita if
-lauseen jälkeen käsitelläksesi erilaisia tilanteita, jokaisella oma ehtonsa.
else
Tämä toimii yleisehtona tapauksille, joita aiemmat if
- ja elif
-ehdot eivät kata. Sarjan lopussa voi olla vain yksi else
-lause, eikä se vaadi ehtoa. if
Esimerkkisovelluksia
Aloitetaan yksinkertaisella if
/ else
-lauseella, jolla tehdään päätös yhden ehdon perusteella. Tässä yritämme selvittää, täytyykö ruokakaupan tuotetta täydentää varastotason perusteella:
# Stock level of an item stock_level = 15 # Simple `if`/`else` to check stock levels if stock_level < 20: print("Stock is low") else: print("Stock is okay")
Tämä vuokaavio havainnollistaa päätöspolkuja, joita Python-tulkki seuraa edellisessä if-else
-esimerkissä:
Seuraavaksi hyödynnetään elif
-lausetta hieman monimutkaisemmassa sovelluksessa. Tässä sovelluksessa käytetään if
/ elif
/ else
-lauseita alennusprosenttien soveltamiseen kokonaiskustannusten perusteella suurempien ostosten kannustamiseksi.
# Initial conditions totalCost = 150 # Applying discounts based on purchase amount if totalCost >= 200: print("20% discount applied") elif totalCost >= 100: print("10% discount applied") else: print("No discount for purchases under $100")
Tämä vuokaavio havainnollistaa alennusten soveltamisprosessia kokonaiskustannuksen perusteella käyttäen if
-, elif
- ja else
-lauseita:
Seuraavassa sovelluksessa esitellään sisäkkäiset if-else
-ehdot, jotka demonstroivat tarkempaa päätöksentekoprosessia. Sisällyttämällä yhden if-else
-rakenteen toisen sisään voidaan tehdä useita päätöksiä useiden kriteerien perusteella.
Tämä käytännön esimerkki havainnollistaa, kuinka päivittäistavarakauppa voi hallita varastoaan tuotetyypin ja erityisehtojen, kuten toimituspäivien määrän tai varastotason, perusteella.
# Initial conditions product = 'Non-Perishable' stock = 70 # Determine the handling of products based on type and condition if product == 'Perishable': if daysDelivered >= 4: print("Not fresh - Initiate discount") else: print("Product is fresh") elif product == 'Non-Perishable': if stock > 100: print("Consider discount") else: print("No discount needed") else: print("The product is not specified")
Seuraava päätöspuukaavio havainnollistaa edellisen koodiesimerkin sisäkkäistä if-else
-logiikkaa visuaalisesti:
Syntaksihuomioita
Kun kirjoitat ehtolauseita Pythonissa, tiettyjen syntaksisääntöjen noudattaminen on olennaista. Olet ehkä huomannut kaksoispisteen :
ja sisennyksen tärkeän roolin suoritettavien ehtojen muodostamisessa.
Tarkastellaan näiden yksityiskohtien merkitystä:
Kaksoispisteet
Ajattele kaksoispistettä if
-, elif
- tai else
-lauseen lopussa merkkinä, joka ilmaisee, "Tässä on seuraavat ohjeet, jos juuri mainitsemani ehto toteutuu." Kaksoispiste toimii opasteena, joka selkeästi osoittaa, mistä ohjeet alkavat.
Sisennys
Kun sisennetyn koodilohkon yläpuolella oleva ehto on True
, kaikki sen alla olevat sisennetyt koodirivit suoritetaan. Jos ehto ei ole True
, Python ohittaa nämä vaiheet ja etsii seuraavan ehdon.
Vaikka nämä saattavat vaikuttaa pieniltä yksityiskohdilta, ne ovat ratkaisevan tärkeitä, jotta koodisi suorittuu oikein. Kun tutustut Pythonin käyttöön paremmin, näistä käytännöistä tulee sinulle itsestäänselvyyksiä.
Erinomaista työtä Pythonin perusasioiden omaksumisessa! Ymmärryksesi ohjausrakenteiden oikeasta jäsentelystä luo vankan pohjan monimutkaisempien ohjelmointitehtävien ratkaisemiselle. Nyt on aika testata uusia taitojasi kattavan haasteen avulla, jossa pääset soveltamaan oppimaasi käytännössä.
Swipe to start coding
Luo yksinkertainen alennusjärjestelmä ruokakaupalle, joka myöntää alennuksia tuotetyypin ja viikonpäivän perusteella.
- Käytä syötemuuttujia
product_type
jaday_of_week
. - Toteuta ehtolauseet tarkistamaan:
- Jos
product_type
on"Fruits"
jaday_of_week
on"Monday"
, tulosta 10 % alennus hedelmistä; - Jos
product_type
on"Vegetables"
jaday_of_week
on"Tuesday"
, tulosta 15 % alennus vihanneksista; - Jos
product_type
on"Dairy"
jaday_of_week
on"Wednesday"
, tulosta 20 % alennus maitotuotteista; - Jos
product_type
on"Other"
, tulosta"No discount available."
; - Käytä
else
-haaraa muihin tapauksiin, joissa mikään ehto ei täyty.
- Jos
Tulostusvaatimukset
- Tulosta viestit kuten:
"10% discount on Fruits today!"
jokaisesta täsmäävästä ehdosta. - Jos
product_type
on"Other"
, tulosta"No discount available."
- Jos mikään ehto ei täyty, tulosta
"No special discounts today."
Ratkaisu
Kiitos palautteestasi!