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 | Mastering Python If-Setninger
Kontrollflyt i Python

bookLogiske Operatorer i Python

Tidligere utforsket vi situasjoner som involverte én enkelt betingelse i if-setningen. Nå skal vi se nærmere på scenarier hvor vi må evaluere flere betingelser.

Nestede if-setninger

En tilnærming er å bruke nestede if-setninger, som vist i eksempelet:

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

Å stole mye på nestede if-betingelser regnes imidlertid ikke som beste praksis. En erfaren utvikler vil foretrekke å bruke logiske operatorer i stedet for å nøste betingelser.

Bruk av logiske operatorer

Logiske operatorer gjør det mulig å kombinere flere betingelser på en mer effektiv måte.
Python-språket 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.")
copy

not-operatoren

not brukes på én betingelse og inverterer dens verdi.

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

I Python-syntaks er hver "tom" verdi ekvivalent med False, og enhver "ikke-tom" verdi er ekvivalent med 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 betingelsene 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.")
copy

Logisk eller

En betingelse med or gjelder hvis minst én av de to (eller flere) angitte betingelsene er True.

Anta at du ønsker å feire små seire. Hvis du oppnår minst ett av dine mål, skriv ut en motiverende melding.

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.")
copy

Her oppfyller hydration_level betingelsen, så if-setningen kjøres. Husk at med operatoren or trenger kun én betingelse å være True.

1. I en treningsapp ønsker du å sjekke om en bruker oppfyller både sitt daglige skrittmål og kalorimål. Hvilken logisk operator bør du bruke?

2. Hvordan kan du sjekke om brukeren oppfyller minst ett av sine treningsmål?

question mark

I en treningsapp ønsker du å sjekke om en bruker oppfyller både sitt daglige skrittmål og kalorimål. Hvilken logisk operator bør du bruke?

Select the correct answer

question mark

Hvordan kan du sjekke om brukeren oppfyller minst ett av sine treningsmål?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 4

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

bookLogiske Operatorer i Python

Sveip for å vise menyen

Tidligere utforsket vi situasjoner som involverte én enkelt betingelse i if-setningen. Nå skal vi se nærmere på scenarier hvor vi må evaluere flere betingelser.

Nestede if-setninger

En tilnærming er å bruke nestede if-setninger, som vist i eksempelet:

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

Å stole mye på nestede if-betingelser regnes imidlertid ikke som beste praksis. En erfaren utvikler vil foretrekke å bruke logiske operatorer i stedet for å nøste betingelser.

Bruk av logiske operatorer

Logiske operatorer gjør det mulig å kombinere flere betingelser på en mer effektiv måte.
Python-språket 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.")
copy

not-operatoren

not brukes på én betingelse og inverterer dens verdi.

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

I Python-syntaks er hver "tom" verdi ekvivalent med False, og enhver "ikke-tom" verdi er ekvivalent med 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 betingelsene 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.")
copy

Logisk eller

En betingelse med or gjelder hvis minst én av de to (eller flere) angitte betingelsene er True.

Anta at du ønsker å feire små seire. Hvis du oppnår minst ett av dine mål, skriv ut en motiverende melding.

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.")
copy

Her oppfyller hydration_level betingelsen, så if-setningen kjøres. Husk at med operatoren or trenger kun én betingelse å være True.

1. I en treningsapp ønsker du å sjekke om en bruker oppfyller både sitt daglige skrittmål og kalorimål. Hvilken logisk operator bør du bruke?

2. Hvordan kan du sjekke om brukeren oppfyller minst ett av sine treningsmål?

question mark

I en treningsapp ønsker du å sjekke om en bruker oppfyller både sitt daglige skrittmål og kalorimål. Hvilken logisk operator bør du bruke?

Select the correct answer

question mark

Hvordan kan du sjekke om brukeren oppfyller minst ett av sine treningsmål?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 4
some-alt