Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Introduktion til Funktioner | Funktioner
Python Ninja

bookIntroduktion til Funktioner

Stryg for at vise menuen

Når udfordringerne bliver større, vil du ofte have brug for, at Ninjaen samler en række handlinger i én genanvendelig kommando, som kan kaldes, når det er nødvendigt.

Forestil dig for eksempel, at der er 2 sushi-felter i det samme mønster på kortet. Ninjaen skal nærme sig hver enkelt, samle den op og fortsætte. At kopiere den samme kode hver gang virker, men det bliver hurtigt rodet og tidskrævende. Funktioner løser dette problem.

En funktion gør det muligt at samle flere kommandoer i én handling og give den et navn. Når den først er defineret, kan du udføre denne handling, når du vil, med blot én linje kode. Tænk på en funktion som et brugerdefineret træk, du lærer din Ninja.

Her er, hvordan koden kunne se ud uden brug af funktioner:

ninja.py

ninja.py

copy

Her gentages 2 grupper af bevægelser logisk flere gange.

Oprettelse af din første funktion

Nu omsættes den gentagne logik til en funktion:

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

Her sker følgende:

  • def indleder en funktionens definition;
  • collect_sushi er funktionens navn;
  • ninja er funktionens parameter;
  • De indrykkede linjer er de kommandoer, funktionen udfører.

Kald af en funktion

Når funktionen er defineret, kan du bruge den sådan her:

collect_sushi(ninja)
collect_sushi(ninja)

Prøv dette:

ninja.py

ninja.py

copy
Note
Bemærk

Al kode inde i en funktion skal rykkes ind under funktionsdefinitionen.

For eksempel virker koden nedenfor ikke, fordi den ikke er korrekt indrykket:

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

Hvorfor er det bedre at bruge en funktion som collect_sushi() end at kopiere den samme bevægelseskode flere gange?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 1

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Sektion 3. Kapitel 1
some-alt