VillkorLektion fem

Villkorssatserna if och else

En if-sats är en så kallad villkorssats. Den utförs beroende på om ett villkor är uppfyllt eller ej. If-satsen avgör om en operation (en viss del av ditt program) ska utföras eller inte i ditt program. Else-satsen utförs ifall if-satsen ej är uppfylld.

Om (if) det regnar ute:
ta på regnkläder
Om inte (else):
ta höstjackan

I exemplet ovan är “Om” själva if-satsen, villkoret är om det regnar och påtagandet av regnkläder är analogt med själva operationen, det som ska utföras. “Om inte” är else-satsen, vad ska utföras om inte if-satsens villkor uppfylls?

I nedanstående program matar användaren in sin ålder i programmet. Åldern sparas i variabeln alder och jämförs sedan med villkoret i if-satsen. För att undvika fel när kod körs kan det vara bra att undvika våra svenska bokstäver å ä ö.Eftersom vi ska utföra en matematisk operation och jämföra om åldern, en siffra, är mindre eller större än en annan siffra (18) så definierar vi variabeln till datatypen int. Vi kan inte räkna matte med textsträngar (String) och vi är inte heller intresserade av decimaltal i denna övning.

Om villkoret (som säger att din ålder är under 18 år) är uppfyllt skriver programmet ut texten “Du är under 18. Målsmans underskrift krävs för lånekort.”

Om villkoret i if-satsen inte uppfylls fortsätter programmet vidare med else-satsen och därefter får vi utskriften “Du är över 18. Målsmans underskrift krävs inte för lånekort.”

alder = int(input("Var vänlig ange din ålder (med siffror): "))
if alder < 18: print("Du är under 18. Målsmans underskrift krävs för lånekort.") else: print("Du är över 18. Målsmans underskrift krävs inte för lånekort.")

Indentering

Det är viktigt att du trycker på Enter efter if-satserna så att indenteringen, det vill säga indragen blir korrekta, annars är det möjligt att programmet inte fungerar.

Indrag vid print-satserna.

Om du till exempel har missat att trycka på Enter efter if-satsen på rad 3 enligt bilden nedan så kommer du att få ett felmeddelande när du försöker köra programmet.

Inget indrag innan printsatsen.
File "main.py", line 3 print("Du är under 18. Målsmans underskrift krävs för lånekort.") ^ IndentationError: expected an indented block
Om du loggar in kan du spara dina framsteg och få personligt rekommenderade kurser.

Författare: Linda Stark

Publicerad:

Reviderad: