Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Introductie tot Functies | Functies
Python Ninja

bookIntroductie tot Functies

Veeg om het menu te tonen

Naarmate de uitdagingen toenemen, is het vaak nodig dat de Ninja een reeks acties groepeert tot één herbruikbaar commando dat op elk gewenst moment kan worden aangeroepen.

Stel bijvoorbeeld dat er 2 sushi-tegels in hetzelfde patroon op de kaart liggen. De Ninja moet naar elk van deze tegels gaan, deze oppakken en doorgaan. Elke keer dezelfde code kopiëren werkt, maar wordt al snel onoverzichtelijk en kost tijd. Functies lossen dit probleem op.

Met een functie kun je meerdere commando's groeperen tot één enkele actie en deze een naam geven. Zodra de functie is gedefinieerd, kun je deze actie uitvoeren wanneer je maar wilt met slechts één regel code. Zie een functie als een aangepaste zet die je de Ninja aanleert.

Hier zie je hoe de code eruit zou zien zonder gebruik van functies:

ninja.py

ninja.py

copy

Hier worden 2 groepen bewegingen logisch herhaald.

Je Eerste Functie Maken

Zet nu die herhaalde logica om in een functie:

def collect_sushi(ninja):
    ninja.go_right()
    ninja.go_right()
    ninja.pick_sushi()

Dit gebeurt er:

  • def start een functiedefinitie;
  • collect_sushi is de naam van de functie;
  • ninja is een parameter van de functie;
  • De ingesprongen regels zijn de opdrachten die de functie uitvoert.

Een Functie Aanroepen

Zodra de functie is gedefinieerd, kun je deze als volgt gebruiken:

collect_sushi(ninja)
collect_sushi(ninja)

Probeer dit:

ninja.py

ninja.py

copy
Note
Opmerking

Alle code binnen een functie moet ingesprongen zijn onder de functiedefinitie.

Het onderstaande voorbeeld werkt niet omdat het niet correct is ingesprongen:

def collect_sushi(ninja):
ninja.go_right()
ninja.go_right()
ninja.pick_sushi()
question mark

Waarom is het gebruik van een functie zoals collect_sushi() beter dan hetzelfde bewegingscode meerdere keren te kopiëren?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 1

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Sectie 3. Hoofdstuk 1
some-alt