Python Ontwikkelingscursus
Hoofdstuk
>
Niveau

Woordenboeken gebruiken
Aangepaste functies met dictionaries

Doel

Gebruik een aangepaste functie die door het veld loopt, waarbij gewassen worden geplant en bewaterd.

Het veld heeft verschillende bomen die geplant moeten worden, pak de zak met zaden en vul vervolgens je water bij de put. Gebruik een aangepaste functie met een woordenboek om door het veld te lopen, en plant en bewater de zaden.

Pak de zak met zaden die je de volgende boomzaden geeft in een woordenboek: "orange : 3" , "pear : 4" , "apple : 3" , "peach : 2" . Loop naar de lichte X-markering naast de put en gebruik de collect() functie om water te verzamelen, zoals dit: player.collect("water") .

Zodra je alle benodigde materialen hebt verzameld, maak je een aangepaste functie met de naam sow_field die de zaden en het water gebruikt om het veld te beplanten en te irrigeren. De aangepaste functie neemt drie (3) argumenten, namelijk: tree, loops en direction. Met deze argumenten voert de aangepaste functie een for-lus uit om het veld te irrigeren.

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)

De eerste argument, tree, is de naam van de sleutel die wordt gebruikt in het woordenboek, namelijk "orange", "pear", "apple" en "peach". Kies de juiste naam bij het planten.

Het volgende argument is loops en dit bepaalt het aantal cycli dat je wenst dat de functie doorloopt. Dit is gelijk aan het aantal zaden van elk type in het veld. Het laatste argument is direction, namelijk "left" en "right". Kies welke richting je wilt dat de speler opgaat tijdens het uitvoeren van de lus.

Ga naar het bovenste deel van de kaart nadat je het water hebt verzameld en gebruik de aangepaste functie, zoals dit: sow_field("orange", 3, "right"). Doe dit voor alle boomzaden om het level te voltooien.

Codeboek