Jämförelseoperatorer används för att jämföra värden. Med logiska operatorer kan du kombinera villkor till större uttryck.
Jämförelseoperatorer
För de inbyggda taltyperna ger jämförelser ett booleskt värde: True eller False.
| Operator | Betydelse | Exempel |
|---|---|---|
| == | lika med | 3 == 5 → False |
| != | inte lika med | 3 != 5 → True |
| < | mindre än | 3 < 5 → True |
| > | större än | 3 > 5 → False |
| <= | mindre än eller lika med | 3 <= 5 → True |
| >= | större än eller lika med | 3 >= 5 → False |
= tilldelar ett värde. == jämför två värden.
a = 3
b = 5
print(a < b) # True
print(a == b) # False
print(a != b) # Trueand, or och not
and: båda villkoren måste vara sanna.or: minst ett villkor måste vara sant.not: vänder sanningsvärdet.
a = True
b = False
print(a and b) # False
print(a or b) # True
print(not a) # False
print(a and not b) # Truenot har högre prioritet än and, som har högre prioritet än or. Använd parenteser för att göra avsikten tydlig.
Kombinera villkor
age = 20
has_ticket = True
if age >= 18 and has_ticket:
print("Välkommen in!")Operatorerna and och or kortsluter: Python utvärderar bara den högra delen om den behövs. Utanför rena booleska uttryck returnerar de en av operanderna, inte alltid ett booleskt värde.
name = ""
print(name or "Gäst") # Gäst& och | är bitvisa operatorer och är inte generella ersättare för and och or. NumPy använder dem också för elementvisa operationer på arrayer.
Jämförelser mellan datatyper
Olika typer kan ibland vara lika: 1 == 1.0 och True == 1 ger True. Däremot ger "1" == 1 False. Vissa ordningsjämförelser, som "1" < 1, ger TypeError. Jämför därför värden med avsedd datatyp.