Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele While-silmukat | Silmukat
Python-Ritari

bookWhile-silmukat

Tervetuloa while-silmukoiden lukuun! Tässä luvussa tutkimme, kuinka while-silmukoita käytetään tekemään ritarista tehokkaampi kolikoiden keräämisessä. Opimme myös uusia menetelmiä, joiden avulla ritari ymmärtää ympäristöään, sekä kuinka vertailla merkkijonoja Pythonissa.

While-silmukoiden ymmärtäminen

While-silmukka on ohjausrakennelause, 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 haluat suorittaa toiminnon useita kertoja tietämättä etukäteen, kuinka monta kertaa se täytyy tehdä.

While-silmukan syntaksi

Silmukka suorittaa sisäisen koodilohkon niin kauan kuin ehto on tosi.

1234
i = 0 while i < 5: print("Incrementing:", i) i += 1
copy

Ritarin ympäristö

Ritarin navigoinnin helpottamiseksi on käytettävissä useita menetelmiä. object_up()-metodi antaa ritarin tarkistaa, mitä on suoraan sen yläpuolella olevassa ruudussa. Vastaavasti object_down() tarkistaa alapuolella olevan ruudun, object_right() oikealla olevan ruudun ja object_left() vasemmalla olevan ruudun. Jokainen näistä metodeista palauttaa merkkijonon, joka kuvaa viereisessä ruudussa olevaa objektia, joka voi olla joko "wall", "coin" 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ämä operaattorit ovat hyödyllisiä, kun haluat tehdä päätöksiä ritarin ympäristön perusteella.

Esimerkki

Tarkastellaan esimerkkiä, joka havainnollistaa, kuinka while-silmukkaa käytetään yhdessä ritarin metodien kanssa kolikoiden keräämiseen sarakkeesta:

knight.py

knight.py

copy

Tässä esimerkissä collect_column-funktio käyttää while-silmukkaa kerätäkseen kaikki kolikot sarakkeesta. Ritari tarkistaa, onko sen yläpuolella kolikko ja jatkaa poimimista sekä siirtyy ylöspäin, kunnes kolikoita ei enää ole. Keräämisen jälkeen ritari palaa takaisin alkuperäiselle paikalleen.

Tehtävä

Swipe to start coding

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 3
knight.py

knight.py

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

close

Awesome!

Completion rate improved to 2.94

bookWhile-silmukat

Pyyhkäise näyttääksesi valikon

Tervetuloa while-silmukoiden lukuun! Tässä luvussa tutkimme, kuinka while-silmukoita käytetään tekemään ritarista tehokkaampi kolikoiden keräämisessä. Opimme myös uusia menetelmiä, joiden avulla ritari ymmärtää ympäristöään, sekä kuinka vertailla merkkijonoja Pythonissa.

While-silmukoiden ymmärtäminen

While-silmukka on ohjausrakennelause, 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 haluat suorittaa toiminnon useita kertoja tietämättä etukäteen, kuinka monta kertaa se täytyy tehdä.

While-silmukan syntaksi

Silmukka suorittaa sisäisen koodilohkon niin kauan kuin ehto on tosi.

1234
i = 0 while i < 5: print("Incrementing:", i) i += 1
copy

Ritarin ympäristö

Ritarin navigoinnin helpottamiseksi on käytettävissä useita menetelmiä. object_up()-metodi antaa ritarin tarkistaa, mitä on suoraan sen yläpuolella olevassa ruudussa. Vastaavasti object_down() tarkistaa alapuolella olevan ruudun, object_right() oikealla olevan ruudun ja object_left() vasemmalla olevan ruudun. Jokainen näistä metodeista palauttaa merkkijonon, joka kuvaa viereisessä ruudussa olevaa objektia, joka voi olla joko "wall", "coin" 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ämä operaattorit ovat hyödyllisiä, kun haluat tehdä päätöksiä ritarin ympäristön perusteella.

Esimerkki

Tarkastellaan esimerkkiä, joka havainnollistaa, kuinka while-silmukkaa käytetään yhdessä ritarin metodien kanssa kolikoiden keräämiseen sarakkeesta:

knight.py

knight.py

copy

Tässä esimerkissä collect_column-funktio käyttää while-silmukkaa kerätäkseen kaikki kolikot sarakkeesta. Ritari tarkistaa, onko sen yläpuolella kolikko ja jatkaa poimimista sekä siirtyy ylöspäin, kunnes kolikoita ei enää ole. Keräämisen jälkeen ritari palaa takaisin alkuperäiselle paikalleen.

Tehtävä

Swipe to start coding

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!

close

Awesome!

Completion rate improved to 2.94
Osio 4. Luku 3
knight.py

knight.py

some-alt