Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Logiske Operatorer | Booleans og Sammenligninger
Datatyper i Python

Logiske Operatorer

Stryg for at vise menuen

Folk siger ja og ja, ja eller nej, bestemt ikke. I Python udtrykker de logiske operatorer and, or og not disse ideer formelt og giver Booleans (True/False), som bruges sammen med sammenligninger i if/while.

Hvad hver operator betyder

Præcedens

not binder stærkere end and, som binder stærkere end or (not > and > or). Brug parenteser ved tvivl.

For eksempel er age >= 18 and has_id kun True, hvis begge betingelser er opfyldt:

123
age = 21 has_id = True print(age >= 18 and has_id) # True

Sandhedstabel

En sandhedstabel viser alle mulige sandhedsværdier for input og viser det resulterende output af et logisk udtryk. Det er en kompakt måde at ræsonnere om logik uden at køre kode.

Brug af tabellen

Hvis X er False og Y er True, så er X and Y False, X or Y er True, og not X er True.

Returværdier & Kortslutning

and og or giver ikke altid de booleske værdier True eller False. I stedet returnerer de en af deres operander, og Python stopper evalueringen tidligt (kortslutter), så snart det endelige resultat er garanteret.

  • A and B:

  • Hvis A er falsk, er resultatet garanteret at være falsk, så Python kortslutter og returnerer A (uden at evaluere B).

  • Hvis A er sand, afhænger resultatet udelukkende af B, så Python evaluerer og returnerer B.

  • A or B:

  • Hvis A er sand, er resultatet garanteret at være sandt, så Python kortslutter og returnerer A (uden at evaluere B).

  • Hvis A er falsk, afhænger resultatet udelukkende af B, så Python evaluerer og returnerer B.

  • not X returnerer altid en egentlig boolesk værdi: True eller False.

1234567891011121314151617
# Choosing a display name for a user profile username = "" # user didn't set a custom name print(username or "Guest") # "Guest" → fallback to default name username = "Alice" print(username or "Guest") # "Alice" → custom name is used # Checking login attempts and access permissions login_attempts = 0 access_level = 123 print(login_attempts and access_level) # 0 → login not yet attempted login_attempts = 5 print(login_attempts and access_level) # 123 → user has access after attempts # Checking empty and non-empty values print(not 0, not "Hello") # True False → 0 is falsey, non-empty string is truthy

1. Udfyld felterne med True eller False. Lad X = True, Y = False.

2. Hvilken sætning matcher klassisk logik for "hverken X eller Y"?

3. Hvad returnerer udtrykket?

question-icon

Udfyld felterne med True eller False. Lad X = True, Y = False.

X and Y
not X

X or Y

Klik eller træk`n`drop elementer og udfyld hullerne

question mark

Hvilken sætning matcher klassisk logik for "hverken X eller Y"?

Vælg det korrekte svar

question mark

Hvad returnerer udtrykket?

Vælg det korrekte svar

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. 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 2. Kapitel 4
some-alt