Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære While-løkker | Løkker
Python Ninja

book
While-løkker

Velkommen til kapittelet om while-løkker! I dette kapittelet skal vi utforske hvordan vi kan bruke while-løkker for å gjøre vår ninja mer effektiv i å samle sushi. Vi vil også lære om noen nye metoder som hjelper ninjaen å forstå omgivelsene, samt hvordan man sammenligner strenger i JavaScript.

Forståelse av While-løkker

En while-løkke er en kontrollflytsetning som lar kode bli utført gjentatte ganger basert på en gitt boolsk betingelse. Koden inne i løkken vil fortsette å kjøre så lenge betingelsen forblir sann. Dette er spesielt nyttig når du vil utføre en handling flere ganger uten å vite på forhånd hvor mange ganger det må gjøres.

Syntaks for en While-løkke

Løkken vil fortsette å kjøre kodeblokken inni den til betingelsen evalueres til usann.

i = 0
while i < 5:
print("Incrementing:", i)
i += 1
1234
i = 0 while i < 5: print("Incrementing:", i) i += 1
copy

Ninjaens Omgivelser

For å hjelpe ninjaen med å navigere i sin verden, er det flere metoder tilgjengelige. Metoden object_up() lar ninjaen sjekke hva som er i cellen rett over den. Tilsvarende sjekker object_down() cellen under, object_right() sjekker cellen til høyre, og object_left() sjekker cellen til venstre. Hver av disse metodene returnerer en streng som beskriver objektet i den tilstøtende cellen, som kan være enten "wall", "sushi", eller "empty".

Strengsammenligninger

I Python kan du sammenligne strenger ved å bruke == og != operatorene. == operatoren sjekker om to strenger er nøyaktig de samme, mens != operatoren sjekker om to strenger ikke er de samme. Disse operatorene er nyttige når du vil ta beslutninger basert på ninjaens omgivelser.

Eksempel

La oss se på et eksempel som demonstrerer hvordan man bruker en while-løkke sammen med ninjaens metoder for å samle sushi fra en kolonne:

py

ninja.py

copy
def ninja_controller(ninja):
ninja.go_up()
collect_column(ninja)
ninja.go_right()
collect_column(ninja)

def collect_column(ninja):
collected = 0
while ninja.object_up() == "sushi":
ninja.pick_sushi()
ninja.go_up()
collected += 1
ninja.pick_sushi()

for i in range(collected):
ninja.go_down()

I dette eksempelet bruker collect_column-funksjonen en while-løkke for å samle all sushi i en kolonne. Ninjaen sjekker om det er sushi over den og fortsetter å plukke og bevege seg oppover til det ikke er mer sushi. Etter å ha samlet, beveger ninjaen seg tilbake ned til sin opprinnelige posisjon.

Oppgave

Swipe to start coding

Løsning

def ninja_controller(ninja):
while ninja.object_right() != "wall":
ninja.go_right()
ninja.pick_sushi()

while ninja.object_up() != "wall":
ninja.go_up()
ninja.pick_sushi()

Utforsk andre kurs i Katalog

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 3
ninja.py

ninja.py

def ninja_controller(ninja):
pass
# Write your code below

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

We use cookies to make your experience better!
some-alt