If-satsen i Python


Nyckelord: if-satsen i Python

If-satsen i Python avgör om en viss kodsekvens ska köra eller inte beroende på om ett logiskt uttryck är uppfyllt.

Vad är en If-sats i Python?

En if-sats är inom programmering en villkorssats som styr vad som ska hända i programmet beroende på om ett villkor är uppfyllt eller ej. Om villkoret är uppfyllt, kommer if-satsen att utföra en eller flera operationer/kommandon, annars hoppa över koden och gå vidare i programmet.

If-satsen Python

Flödesschemat visar hur programmet startar och kommer fram till If-villkoret. Ifall If-villkoret är uppfyllt så går programmet vidare och utför en eller flera operationer, men ifall villkoret inte är uppfyllt så hoppar programmet över operationerna och går vidare.

All programmering bygger på villkor och det är if-satserna som styr programmet beroende på vad villkoren säger, vilket ger hela grunden för all logik i programmering!

Varje if-sats har ett villkor som kan besvaras med True eller False.

Varje if-sats har ett villkor, ett så kallat påstående som kan besvaras med sant, eller falskt (True eller False). Om villkoret är sant (True), kommer programmet gå in i if-satsen och utföra alla operationer som är specificerade inom blocket.

If-satsen i Python:

  • Är en villkorssats som utför en eller flera operationer om villkoret är uppfyllt, (True).
  • Styr all logik inom programmering.
  • Villkoret (uttrycket) i if-satsen kan alltid besvaras med en boolean, det vill säga antingen sant eller falskt (True eller False).

Hur gör man en If-sats i Python?

Man skapar en if-sats med syntaxten:

if logiskt uttryck:
    Operation/Operationer...
  • Man deklarerar en if-sats enkelt med det reserverade ordet if().
  • Alla rader som är indenterade (indrad) tillhör if-satsen.
  • Alla rader som tillhör if-satsen kommer köra om if-satsens villkor är uppfyllt (True).
  • Är villkoret True, kommer if-satsen köra.
  • If-satsen är klar när man slutar indentera koden.

Exempel: Hur gör man en if-sats i Python

I följande exempel visar vi hur en if-sats fungerar. All kod som har en indentering (indrag) tillhör if-satsen och kommer utföras om if-villkoret är uppfyllt (True). If-satsen är slut när indenteringen upphör. Om if-satsen aldrig blev uppfylld (False) så hoppar programmet över all kod som tillhör if-satsen (indenterad kod).

Exempel:

run_operation = True


 
if run_operation:
 
 
    print("If-satsen körs.")
 
 
    print("Alla operationer som är indenterade, kommer att utföras.")



 

print("Detta kommandot är inte med i if-satsen, eftersom koden inte är indenterad.")

Utskriften kommer i detta fall bli:

If-satsen körs.
Alla operationer som är indenterade, kommer att utföras.
Detta kommandot är inte med i if-satsen, eftersom att koden inte är indenterad.

Om vi istället sätter variabeln run_operation till False så kommer if-satsen inte köra koden.

run_operation = False
if run_operation:
 
 
    print("If-satsen körs.")
 
 
    print("Alla operationer som är indenterade, kommer att utföras.")



 

print("Detta kommandot är inte med i if-satsen, eftersom koden inte är indenterad.")

Utskriften blir alltså:

Detta kommandot är inte med i if-satsen, eftersom att koden inte är indenterad.

Exempel på If-sats med flera villkor

Det är möjligt att ha flera villkor på samma gång i en if-sats. I tidigare kapitel lärde vi oss vanliga Jämförelse- och Logiska Operatorer i Python där vi såg de vanligaste jämförelseoperationerna som mindre än, större än och lika med (<, >, ==). Dessa jämförelser går att kombinera med flera villkor som exempelvis and eller or.

Exempel: If-sats med och-operationen

I Python använder man sig av det reserverade ordet and för att ange ett extra villkor där båda villkoren måste vara sanna (True) för att if-satsen ska utföras.

Om vi vill kontrollera ifall en int-variabel ligger inom ett intervall t.ex. mellan 0 och 200, sätter vi enkelt upp en if-sats med det logiska uttrycket.

Är variabeln num större än 0 och mindre än 200 så får vi en utskrift Number: num

num = 20 


if(num > 0 and num < 200):
 
 
    print("Number:", num)

I detta fall blir alltså utskriften:

Number: 20

Exempel: Eller-operationen

I Python använder man sig av det reserverade ordet or för att ange ett extra villkor där något av villkoren måste vara sann (True) för att if-satsen ska köra.

I följande exempel kommer if-satsen köra om variabeln num är lika med 20 eller om num är lika med 10.

num = 20 


if num == 20 or num == 10:
 
 
    print("Number:", num)

Utskriften blir alltså:

Number: 20

Användning av jämförelse- och logiska operatorer i If-satser

Vi har tidigare lärt oss hur vi kan använda jämförelse och logiska operatorer i Python. Nu testar vi att använda dessa i if-satsen:

Undvik Upprepning

Genom att använda jämförelse- och logiska operatorer kan du skapa mer koncisa och lättlästa if-satser. Detta minimerar risken för fel och gör koden mer underhållbar. Det gör också så att man slipper skriva samma kod fler gånger om.

Exempel – Testa själv!

I exemplet nedan visar vi hur en if-sats körs enbart om åldern är större eller lika med 18 OCH inkomsten är större eller lika med 20000.

age = 25
income = 30000

if age >= 18 and income >= 20000:
    print("Du får ta ett banklån!")

Testa ändra värdena på variablerna age och income och avgör om if-satsen kommer köra eller inte.

Nästlade If-satser i Python

Nästlade if-satser innebär att man har en if-sats inuti en annan if-sats. Detta möjliggör kontroll av flera villkor i en hierarkisk ordning.

x = 10
y = 20

if x == 10:
    if y == 20:
        print("x är 10 och y är 20")

I exemplet ovan kontrolleras först om x är lika med 10. Om det villkoret är uppfyllt, går programmet vidare till nästa if-sats som kontrollerar om y är lika med 20. Om även det villkoret är uppfyllt, skriver programmet ut meddelandet.

Användning av nästlade if-satser kan vara användbart i situationer där olika villkor är beroende av varandra, men det kan också göra koden svårare att läsa och underhålla. Det är därför viktigt att använda denna funktion med försiktighet och överväga andra strukturer som elif och else för att hålla koden klar och begriplig.

If-satsen i Python – Vanliga frågor och svar

Vad är en villkorssats?

En villkorssats är en sats, som utför en operation enbart om ett villkor är uppfyllt, det vill säga True. Dessa satser kan exempelvis vara if-, else- eller else-if-satserna.

Hur skapar man en if-sats i Python?

Du skapar en if-sats med nyckelordet if, följt av ett logiskt uttryck och ett kolon. Kodblocket som ska köra om uttrycket är sant indenteras under if-satsen.

Vad är syftet med if-satsen i Python?

If-satsen i Python använder man för att exekvera kod baserat på ett villkor. Om villkoret är sant, kör koden inom if-satsen, annars hoppar programmet över kodsekvensen.

Kan man ha flera villkor i en if-sats?

Ja, du kan kombinera flera villkor med logiska operatorer som and och or.

Hur avslutar man en if-sats i Python?

Slutet på en if-sats indikeras genom att avsluta indenteringen.


To top