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

bookLogiske Operatorer

Folk sier "ja og ja", "ja eller nei", "absolutt ikke". I Python uttrykker de logiske operatorene and, or og not disse ideene formelt og gir Booleans (True/False) som brukes sammen med sammenligninger i if/while.

Hva hver operator betyr

Prioritet

not har høyere prioritet enn and, som igjen har høyere prioritet enn or (not > and > or). Bruk parenteser hvis du er usikker.

For eksempel, age >= 18 and has_id er True kun hvis begge sjekkene er oppfylt:

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

Sannhetstabell

En sannhetstabell viser alle mulige sannhetsverdier for innganger og viser det resulterende utfallet av et logisk uttrykk. Det er en kompakt måte å resonnere om logikk uten å kjøre kode.

Bruk av 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.

Returverdier og kortslutning (sammen)

and og or gir ikke alltid ordene True/False, de returnerer en av operandene sine, og Python kan stoppe tidlig når resultatet er kjent.

  • A and B:

  • Hvis A er falsk, er hele uttrykket falskt og resultatet er A (Python evaluerer ikke B);

  • Hvis A er sann, avhenger resultatet av B og uttrykket evalueres til B.

  • A or B:

  • Hvis A er sann, er uttrykket sant og resultatet er A (Python evaluerer ikke B);

  • Hvis A er falsk, avhenger resultatet av B og uttrykket evalueres til B.

  • not X returnerer alltid en faktisk boolsk verdi: 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
copy

1. Fyll inn med True eller False). La X = True, Y = False.

2. Hvilket utsagn samsvarer med klassisk logikk for «verken X eller Y»?

3. Hva returnerer uttrykket?

question-icon

Fyll inn med True eller False). La X = True, Y = False.

X and Y
not X

X or Y

question mark

Hvilket utsagn samsvarer med klassisk logikk for «verken X eller Y»?

Select the correct answer

question mark

Hva returnerer uttrykket?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. 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

Suggested prompts:

Can you explain what "short-circuiting" means in more detail?

Can you give more real-life examples of using these logical operators?

How do I know if a value is considered "truthy" or "falsey" in Python?

Awesome!

Completion rate improved to 3.45

bookLogiske Operatorer

Sveip for å vise menyen

Folk sier "ja og ja", "ja eller nei", "absolutt ikke". I Python uttrykker de logiske operatorene and, or og not disse ideene formelt og gir Booleans (True/False) som brukes sammen med sammenligninger i if/while.

Hva hver operator betyr

Prioritet

not har høyere prioritet enn and, som igjen har høyere prioritet enn or (not > and > or). Bruk parenteser hvis du er usikker.

For eksempel, age >= 18 and has_id er True kun hvis begge sjekkene er oppfylt:

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

Sannhetstabell

En sannhetstabell viser alle mulige sannhetsverdier for innganger og viser det resulterende utfallet av et logisk uttrykk. Det er en kompakt måte å resonnere om logikk uten å kjøre kode.

Bruk av 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.

Returverdier og kortslutning (sammen)

and og or gir ikke alltid ordene True/False, de returnerer en av operandene sine, og Python kan stoppe tidlig når resultatet er kjent.

  • A and B:

  • Hvis A er falsk, er hele uttrykket falskt og resultatet er A (Python evaluerer ikke B);

  • Hvis A er sann, avhenger resultatet av B og uttrykket evalueres til B.

  • A or B:

  • Hvis A er sann, er uttrykket sant og resultatet er A (Python evaluerer ikke B);

  • Hvis A er falsk, avhenger resultatet av B og uttrykket evalueres til B.

  • not X returnerer alltid en faktisk boolsk verdi: 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
copy

1. Fyll inn med True eller False). La X = True, Y = False.

2. Hvilket utsagn samsvarer med klassisk logikk for «verken X eller Y»?

3. Hva returnerer uttrykket?

question-icon

Fyll inn med True eller False). La X = True, Y = False.

X and Y
not X

X or Y

question mark

Hvilket utsagn samsvarer med klassisk logikk for «verken X eller Y»?

Select the correct answer

question mark

Hva returnerer uttrykket?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 4
some-alt