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

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 du bruker 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 er age >= 18 and has_id 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.

Returnerte verdier og kortslutning (sammen)

and og or gir ikke alltid verdiene 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»?

Velg det helt riktige svaret

question mark

Hva returnerer uttrykket?

Velg det helt riktige svaret

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

Seksjon 2. Kapittel 4
some-alt