• 4D/7

Betingelser og Løkker (loops)

 

Opgave 1: Lad os f.eks. starte med et while loop, hvor det indrykkede bliver kørt “så længe” betingelsen er opfyldt. 

Prøv det i Thonny (se resultatet til højre)

navn = input ("Hvad er dit navn? ")

while navn != "Batman":
    print("Du er ikke Batman - prøv igen!")
    navn = input ("Hvad er dit navn? ")
print("Du er Batman!")

Beskrivelse af koden

betyder som skrevet ovenstående “ikke lig med” eller “forskelligt fra”. Så det vi tjekker er altså at så længe navn er forskelligt fra “Batman”, så udføres de 2 indrykkede linjer, hvor man beder om et nyt navn, indtil der skrives “Batman”.

Læg mærke til, at med er vi nødt til at have en værdi i variablen  inden while-loopet køres første gang.

Opgave 2: Man kan også bruge  til at loope. Det fungerer på samme måde som for altid loopet i Makecode. Her er betingelsen altid sand (true), hvilket betyder at loopet aldrig stopper. 

Note: Da programmet aldrig stopper, skal du trykke på Stop i Thonny, for at afbryde programmet.

 

import time

print("Start loopet!") 
while True:
  print("Loopet kører!")
  time.sleep(1) 
print("Loop slut!")

Opgave 3: Der findes en anden type loop, der kan bruges til at gentage kode et bestemt antal gange.

Det kaldes et for-loop:

print("Start loopet!")
for i in range(10):
  print("Loop nr ", i)
print("Loop slut!")

Prøv at taste programmet ind i Thonny og kør det (se resultatet til højre).

Note: Læg mærke til at Python tæller fra 0. Derfor når den kun op til 9, når man skriver at den skal loope 10 gange.

Beskrivelse af koden

Husk, som også nævnt tidligere, at i Python er det vigtigt, at man rykker de linjer ind, der hører til et loop eller en if-sætning. – lige som  linjen i ovenstående program.

“i” er en variabel, der automatisk oprettes når man skriver

Variablen tælles een op hver gang loopet kører en runde, og man kan kalde “i”-variablen inde i loopet, som vi gør, når vi skriver den ud med

Læg mærke til at print() – funktionen her bruger 2 parametre, og at den selv kan finde ud af at oversætte tal-variablen “i” til tekst, så det kan skrives ud sammen med teksten “Loop nr “.

Opgave 4: Vi kan også lave nogle pauser i vores program, så det ikke går så hurtigt.

For at gøre det skal man importere python biblioteket time:

import time 

print("Start loopet!")
for i in range(10):
  print("Loop nr", i)
  time.sleep(1)
print("Loop slut!")

Prøv det i Thonny (se resultatet til højre):

Beskrivelse af koden

Med  går der 1 sekund mellem at hver linje med “Loop nr  X“ printes ud i Shell’en.

Biblioteket time er lavet til at fungere sammen med din computer. Når du skal bruge delays på pico’en bruges biblioteket utime i stedet.

Man skal importere de biblioteker, man skal bruge i toppen af sit program. Det kan være biblioteker, som utime, der har forskellige funktioner til at styre tid, eller f.eks. biblioteker til at styre noget bestemt hardware, som Neopixels eller motorer.

Afrunding

Ovenstående er kun en hurtig introduktion til Python i Thonny – der er en masse mere Python at lære, hvis man vil være god til det. Prøv at kigge på nogle af de links der er i starten af afsnittet.