Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Logiske Operatorer i Python | Beherskelse af Python If-sætninger
Kontrolflow i Python

Logiske Operatorer i Python

Stryg for at vise menuen

Tidligere undersøgte vi situationer med en enkelt betingelse i if-sætningen. Nu skal vi se på scenarier, hvor vi skal evaluere flere betingelser.

Indlejrede if-sætninger

En metode er at bruge indlejrede if-sætninger, som vist i eksemplet:

123456
steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000: if calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")

Dog anses det ikke for god praksis at benytte mange indlejrede if-betingelser. En erfaren udvikler vil foretrække at bruge logiske operatorer i stedet for at indlejre betingelser.

Brug af logiske operatorer

Logiske operatorer gør det muligt at kombinere flere betingelser mere effektivt.
Python-sproget har tre logiske operatorer: not, and, or.

12345
steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000 and calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")

Operatoren not

not anvendes på én betingelse og inverterer dens værdi.

1234
steps_taken = 0 if not steps_taken: print("No steps recorded yet. Time to get moving!")
Note
Bemærk

I Python-syntaks svarer hver "tom" værdi til False, og enhver "ikke-tom" værdi svarer til True. For eksempel:

  • 0 er False, 1 er True;
  • [] er False, [1] er True;
  • "" er False, "a" er True;
  • osv.

Logisk og

Betingelse med and fungerer kun, hvis begge betingelser er True.

123456
steps_taken = 8000 calories_burned = 600 hydration_level = 2 if steps_taken >= 5000 and calories_burned >= 500 and hydration_level >= 2: print("Amazing! You've achieved all your fitness goals for the day.")

Logisk or

Betingelse med or fungerer, hvis mindst én af de to (eller flere) angivne betingelser er True.

Antag, at du ønsker at fejre små sejre. Hvis du opfylder mindst ét af dine mål, udskriv en motiverende besked.

123456
steps_taken = 8000 calories_burned = 200 hydration_level = 2 if steps_taken >= 10000 or calories_burned >= 500 or hydration_level >= 2: print("Great job! You're making progress on your fitness journey.")

Her opfylder hydration_level betingelsen, så if-sætningen udføres. Husk, at med or-operatoren behøver kun én betingelse at være True.

1. I en fitness tracker-app vil du kontrollere, om en bruger opfylder sit daglige skridtmål og kaloriemål. Hvilken logisk operator skal du bruge?

2. Hvordan ville du kontrollere, om brugeren opfylder mindst ét af sine fitnessmål?

question mark

I en fitness tracker-app vil du kontrollere, om en bruger opfylder sit daglige skridtmål og kaloriemål. Hvilken logisk operator skal du bruge?

Vælg det korrekte svar

question mark

Hvordan ville du kontrollere, om brugeren opfylder mindst ét af sine fitnessmål?

Vælg det korrekte svar

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 4

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Sektion 1. Kapitel 4
some-alt