Logga in för att kunna spara vad du har gjort.
<< Föregående
Hem
Nästa >>
VARNING! Fönstret är för smalt för att använda pythonlabbet.se fullt ut. Använd en enhet med tangentbord!

if-satsen

I det här avsnittet kommer du att lära dig

Enkla if-satser

Nu ska vi lära oss hur vi kan få programmet att köra olika delar av koden beroende på olika villkor. Att kunna styra vilken kod som körs i olika situationer är helt grundläggande inom programmering.

Tänk vad som händer när du trycker på tangentbordet. Vad som ska hända då beror såklart på vilken tangent du har tryckt på. Om (engelska: if) du har tryckt på ESC kanske något ska avbrytas och om du trycker på Enter händer något helt annat.

Syntaxen (hur man skriver) för en if-sats är if villkor: där villkor är ett logiskt uttryck, alltså sant eller falskt. Om villkoret är sant så körs koden under if-satsen, är villkoret falskt så hoppas koden över. I Python indenteras koden under if i ett eget block (se första avsnittet).

Exempel

En första if-sats. Prova ändra på värdet i x och se vad som händer.

x = 10
if x == 10:
    print('x är lika med 10')
print('Slut')

Exempel

Vi testar om användaren heter Darth Vader eller Yoda och skriver i så fall ut ett meddelande. Observera att Python gör skillnad på små och stora bokstäver.

namn = input('Skriv ditt namn')
if namn == 'Darth Vader':
    print('Du är inte snäll.')
if namn == 'Yoda':
    print('Du är jättesnäll.')
print('Hejdå ' + namn)
    

Logga in eller skapa konto för att spara dina framsteg och din kod.

Hitta felet

Koden nedan innehåller ett indenteringsfel. Det är upp till dig att fixa koden.

-- Programmets utskrifter --

Logga in eller skapa konto för att spara dina framsteg och din kod.

Skapa

Skriv ett program som frågar användaren om temperaturen (heltal) utomhus. Om temperaturen är mindre än -10, skriv ut Stanna inne. Ifall temperaturen är större än eller lika med -10, skriv ut Gå ut.

-- Programmets utskrifter --

else

Ibland är det bra att köra en viss kod om något är sant (som vi gjorde med en if-sats) och annars (engelska: else) köra någon annan kod. Du kan använda else för att köra kod ifall villkoret i if-satsen är falskt. En else går inte använda ensamt, utan används alltid i samband med if.

Exempel

Ett enkelt exempel på användning av else. Notera att else är på samma indenteringsnivå som if.

namn = input('Vad heter du?')
if namn == 'Elsa':
    print('Jag tror din syster heter Anna.')
else:
    print('Du heter inte Elsa.')

Exempel

Ett annat enkelt exempel på användning av else.

alder = int(input('Hur gammal är du?'))
if alder >= 18:
    print('Du är vuxen!')
else:
    print('Du är under 18 år.')

Logga in eller skapa konto för att spara dina framsteg och din kod.

Vad gör koden?

Läs koden nedan och försök lista ut vad programmet skriver ut. Kör programmet efter du svarat och se om du fick rätt.

-- Programmets utskrifter --

Fråga: Vad kommer programmet ovan att skriva ut?

Rad 3
Rad 5

Logga in eller skapa konto för att spara dina framsteg och din kod.

Vad gör koden?

Läs koden nedan och försök lista ut vad programmet skriver ut. Kör programmet efter du svarat och se om du fick rätt.

-- Programmets utskrifter --

Fråga: Vad kommer programmet ovan att skriva ut?

Feel the force!
You will find only what you bring in.
Do or do not. There is no try.
Great warrior. Wars not make one great.
Feel the force!
Great warrior. Wars not make one great.
Do or do not. There is no try.
You will find only what you bring in.

elif

De flesta programmeringsspråk har något som heter else if eller elseif (svenska: annars om). I Python används istället förkortningen elif. Precis som för else används elif bara i samband med en if-sats och programmet kommer bara dit om villkoret i if-satsen ovan är falsk. Skillnaden är att med elif skriver vi ett nytt villkor som måste vara sant för att kodblocket under ska köras.

Du kan använda hur många elif du vill på rad. En if-sats börjar att alltså med if villkor:, följt av inga, en eller flera elif villkor: och avslutas eventuellt med en else:. Tänk dig att else är det som händer om inga villkor ovanför är sanna.

Exempel

En meny med hjälp elif och else.

menyval = int( input('Gör ditt val:') )
if menyval == 1:
    print('Pizza beställd.')
elif menyval == 2:
    print('Hamburgare beställd.')
elif menyval == 3:
    print('Soppa beställd.')
else:
    print('Ditt val är inte giltigt.')

Logga in eller skapa konto för att spara dina framsteg och din kod.

Ändra i koden

Vi glömde pannkaka i menyn i exemplet ovan! Ändra i koden så att Pannkaka beställd. skrivs ut om användaren väljer 4.

-- Programmets utskrifter --

Logga in eller skapa konto för att spara dina framsteg och din kod.

Skapa

Ditt program ska ta ett heltal som input. Om användaren skriver in ett negativt tal ska programmet skriva ut Negativt, om talet är positivt ska programmet skriva ut Positivt och annars skrivs Noll ut.

-- Programmets utskrifter --
Status
Du har inte gjort klart någon uppgift än (0 st).