Python-kehityskurssi
Luku
>
Taso
Sanakirjojen käyttö
Mukautetut funktiot käyttämällä sanakirjoja
Tavoite
Käytä omaa funktiota, joka käy läpi pellon, istuttaen ja kastelemalla satoja.
Pellolla on useita puita, jotka täytyy istuttaa. Nappaa siemenpussi, joka sisältää siemenet, ja täytä vesivarastosi kaivon luona. Käytä sanakirjaa hyödyntävää omaa funktiota kulkemaan pellolla sekä istuttamaan ja kastelemaan siemenet.
Nappaa siemenpussi, joka antaa sinulle seuraavat puusiemenet sanakirjassa: "orange : 3" , "pear : 4" , "apple : 3" , "peach : 2". Kävele valon X-merkin luokse kaivon vieressä ja käytä collect()-funktiota kerätäksesi vettä, esimerkiksi näin: player.collect("water").
Kun olet kerännyt kaikki tarvittavat materiaalit, luo oma funktio nimeltä sow_field käyttäen siemeniä ja vettä pellon istuttamiseen ja kasteluun. Oma funktio ottaa kolmea (3) argumenttia: tree, loops ja direction. Näiden argumenttien avulla oma funktio suorittaa for-silmukan pellon kasteluun.
def sow_field(tree,loops,direction):
for x in range(loops):
if direction == "right":
player.move_forward(2)
player.turn_left()
player.plant(seeds,tree)
player.water()
player.turn_right()
player.move_forward()
if direction == "left":
player.move_forward()
player.turn_right()
player.plant(seeds,tree)
player.water()
player.turn_left()
player.move_forward(2)
Ensimmäinen argumentti, tree, on avaimen nimi, jota käytetään sanakirjassa; nämä ovat "orange", "pear", "apple" ja "peach". Valitse oikea nimi istutuksen yhteydessä.
Seuraava argumentti on loops, joka määrittää silmukan kierrosten määrän. Tämä vastaa kullakin siementyypillä pellolla olevien siementen määrää. Viimeinen argumentti on direction, joka voi olla "left" tai "right". Valitse pelaajan kulkusuunta funktiota toistettaessa.
Siirry kartan yläosaan veden keräämisen jälkeen ja käytä omaa funktiota, esimerkiksi näin: sow_field("orange", 3, "right"). Tee tämä kaikilla puusiemenillä, jotta taso saadaan suoritettua.