Introduktion till Funktioner
Svep för att visa menyn
När utmaningarna blir svårare behöver du ofta att Ninjan grupperar en sekvens av handlingar till ett enda återanvändbart kommando som kan anropas vid behov.
Tänk dig till exempel att det finns 2 sushiplattor i samma mönster på kartan. Ninjan måste närma sig varje, plocka upp den och fortsätta. Att kopiera samma kod varje gång fungerar, men det blir snabbt rörigt och tar tid. Funktioner löser detta problem.
En funktion låter dig gruppera flera kommandon till en enda åtgärd och ge den ett namn. När den är definierad kan du köra den åtgärden när du vill med bara en kodrad. Tänk på en funktion som ett eget drag du lär din Ninja.
Så här kan koden se ut utan att använda funktioner:
ninja.py
Här upprepas logiskt två grupper av rörelser.
Skapa din första funktion
Omvandla nu den upprepade logiken till en funktion:
def collect_sushi(ninja):
ninja.go_right()
ninja.go_right()
ninja.pick_sushi()
Detta händer här:
defpåbörjar en funktionsdefinition;collect_sushiär funktionens namn;ninjaär funktionens parameter;- De indragna raderna är de kommandon som funktionen kör.
Anropa en funktion
När funktionen är definierad kan du använda den så här:
collect_sushi(ninja)
collect_sushi(ninja)
Prova detta:
ninja.py
All kod inuti en funktion måste vara indenterad under funktionsdefinitionen.
Till exempel fungerar inte koden nedan eftersom den inte är korrekt indenterad:
def collect_sushi(ninja):
ninja.go_right()
ninja.go_right()
ninja.pick_sushi()
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal