While-silmukat
Tervetuloa while-silmukoiden lukuun! Tässä luvussa perehdymme siihen, kuinka while-silmukoita käytetään tekemään ninjasta tehokkaampi sushin keräämisessä. Opimme myös uusia menetelmiä, joiden avulla ninja ymmärtää ympäristöään, sekä kuinka merkkijonoja vertaillaan Pythonissa.
While-silmukoiden ymmärtäminen
While-silmukka on ohjausrakennelausunto, jonka avulla koodia voidaan suorittaa toistuvasti annetun totuusarvoehdon perusteella. Silmukan sisällä oleva koodi suoritetaan niin kauan kuin ehto on tosi. Tämä on erityisen hyödyllistä, kun halutaan suorittaa toiminto useita kertoja tietämättä etukäteen, kuinka monta kertaa se täytyy tehdä.
While-silmukan syntaksi
Silmukka suorittaa sisäisen koodilohkonsa niin kauan kuin ehto on tosi.
1234i = 0 while i < 5: print("Incrementing:", i) i += 1
Ninjat ja ympäristö
Ninjan liikkumisen helpottamiseksi on käytettävissä useita menetelmiä. object_up()-metodi antaa ninjan tarkistaa, mikä on suoraan sen yläpuolella olevassa solussa. Vastaavasti object_down() tarkistaa alapuolella olevan solun, object_right() oikealla olevan solun ja object_left() vasemmalla olevan solun. Jokainen näistä metodeista palauttaa merkkijonon, joka kuvaa viereisessä solussa olevaa objektia, joka voi olla joko "wall", "sushi" tai "empty".
Merkkijonojen vertailu
Pythonissa voit vertailla merkkijonoja käyttämällä == ja != -operaattoreita. ==-operaattori tarkistaa, ovatko kaksi merkkijonoa täsmälleen samat, kun taas !=-operaattori tarkistaa, ovatko ne eri. Näistä operaattoreista on hyötyä, kun halutaan tehdä päätöksiä ninjan ympäristön perusteella.
Esimerkki
Tarkastellaan esimerkkiä, jossa käytetään while-silmukkaa yhdessä ninjan metodien kanssa sushin keräämiseksi sarakkeesta:
ninja.py
Tässä esimerkissä collect_column-funktio käyttää while-silmukkaa kerätäkseen kaikki sushit sarakkeesta. Ninja tarkistaa, onko sen yläpuolella sushia, ja jatkaa poimimista sekä siirtyy ylöspäin, kunnes sushia ei enää ole. Keräämisen jälkeen ninja palaa takaisin alkuperäiselle paikalleen.
Swipe to start coding
Ratkaisu
Tutustu muihin kursseihin luettelossa
Kiitos palautteestasi!
ninja.py
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 2.94
While-silmukat
Pyyhkäise näyttääksesi valikon
Tervetuloa while-silmukoiden lukuun! Tässä luvussa perehdymme siihen, kuinka while-silmukoita käytetään tekemään ninjasta tehokkaampi sushin keräämisessä. Opimme myös uusia menetelmiä, joiden avulla ninja ymmärtää ympäristöään, sekä kuinka merkkijonoja vertaillaan Pythonissa.
While-silmukoiden ymmärtäminen
While-silmukka on ohjausrakennelausunto, jonka avulla koodia voidaan suorittaa toistuvasti annetun totuusarvoehdon perusteella. Silmukan sisällä oleva koodi suoritetaan niin kauan kuin ehto on tosi. Tämä on erityisen hyödyllistä, kun halutaan suorittaa toiminto useita kertoja tietämättä etukäteen, kuinka monta kertaa se täytyy tehdä.
While-silmukan syntaksi
Silmukka suorittaa sisäisen koodilohkonsa niin kauan kuin ehto on tosi.
1234i = 0 while i < 5: print("Incrementing:", i) i += 1
Ninjat ja ympäristö
Ninjan liikkumisen helpottamiseksi on käytettävissä useita menetelmiä. object_up()-metodi antaa ninjan tarkistaa, mikä on suoraan sen yläpuolella olevassa solussa. Vastaavasti object_down() tarkistaa alapuolella olevan solun, object_right() oikealla olevan solun ja object_left() vasemmalla olevan solun. Jokainen näistä metodeista palauttaa merkkijonon, joka kuvaa viereisessä solussa olevaa objektia, joka voi olla joko "wall", "sushi" tai "empty".
Merkkijonojen vertailu
Pythonissa voit vertailla merkkijonoja käyttämällä == ja != -operaattoreita. ==-operaattori tarkistaa, ovatko kaksi merkkijonoa täsmälleen samat, kun taas !=-operaattori tarkistaa, ovatko ne eri. Näistä operaattoreista on hyötyä, kun halutaan tehdä päätöksiä ninjan ympäristön perusteella.
Esimerkki
Tarkastellaan esimerkkiä, jossa käytetään while-silmukkaa yhdessä ninjan metodien kanssa sushin keräämiseksi sarakkeesta:
ninja.py
Tässä esimerkissä collect_column-funktio käyttää while-silmukkaa kerätäkseen kaikki sushit sarakkeesta. Ninja tarkistaa, onko sen yläpuolella sushia, ja jatkaa poimimista sekä siirtyy ylöspäin, kunnes sushia ei enää ole. Keräämisen jälkeen ninja palaa takaisin alkuperäiselle paikalleen.
Swipe to start coding
Ratkaisu
Tutustu muihin kursseihin luettelossa
Kiitos palautteestasi!
ninja.py