Uitgebreide handleiding voor Python-operators: Rekenkundig, logisch, vergelijking, toekenning, bitwise en precedenties
Wat zijn logische operators in Python?
Logische operators in Python evalueren Boolean-expressies en geven True of False terug. De drie primaire logische operators zijn and, or en not. Ze zijn onmisbaar voor stroomcontrole met if, while en andere conditionele statements.
In deze tutorial verkennen we het volledige spectrum van Python-operators, inclusief:
- Rekenkundige operators
- Vergelijkingsoperators
- Toekenningsoperators
- Logische & bitwise operators
- Lidmaatschapsoperators
- Identiteitsoperators
- Operator-precedenties
Rekenkundige operators
Rekenkundige operators voeren numerieke berekeningen uit. Python ondersteunt de gebruikelijke operators: + (optelling), - (aftrekking), * (vermenigvuldiging), / (ware deling), // (floor-deling), % (modulus), en ** (machtsverheffing). Deze kunnen direct in expressies worden gebruikt of via de ingebouwde eval()-functie voor dynamische evaluatie.
Voorbeeld: Simpele optelling
x = 4 y = 5 print(x + y) # Output: 9
Andere operators werken vergelijkbaar; bijvoorbeeld levert 4 * 5 20 op, 4 / 2 geeft 2.0, en 4 ** 2 resulteert in 16.
Vergelijkingsoperators
Vergelijkings- (relationele) operators evalueren de relatie tussen twee waarden en geven een Booleaanse uitkomst. Ze omvatten:
==(gelijk)!=(ongelijk)<(kleiner dan)<=(kleiner dan of gelijk aan)>(groter dan)>=(groter dan of gelijk aan)
Voorbeeld: Twee variabelen vergelijken
x = 4 y = 5 print('x > y is', x > y) # Output: False Toekenningsoperators
Toekenningsoperators slaan waarden op in variabelen. De basisvorm is =, terwijl samengestelde operators een operatie combineren met toekenning, zoals +=, -=, *=, /= en **=.
Voorbeeld: Basis en samengestelde toekenning
num1 = 4 num2 = 5 print('Line 1 - Value of num1:', num1) print('Line 2 - Value of num2:', num2) # Samengestelde optelling res = num1 + num2 res += num1 print('Line 3 - Result after res += num1:', res) # Output: 13 Logische en bitwise operators
Logische operators (and, or, not) evalueren Booleaanse expressies. Bitwise operators (&, |, ^, ~, <<, >>) voeren bit-manipulatie uit.
Voorbeeld: Logische operaties
a = True b = False print('a and b is', a and b) # Output: False print('a or b is', a or b) # Output: True print('not a is', not a) # Output: False Lidmaatschapsoperators
Lidmaatschapsoperators testen op aanwezigheid van een waarde in een sequence: in en not in.
Voorbeeld: Lidmaatschap controleren in een lijst
x = 4 y = 8 sample_list = [1, 2, 3, 4, 5] if x in sample_list: print('Line 1 - x is available in the list') else: print('Line 1 - x is not available in the list') if y not in sample_list: print('Line 2 - y is not available in the list') else: print('Line 2 - y is available in the list') Identiteitsoperators
Identiteitsoperators vergelijken geheugenadressen van objecten: is en is not. Ze zijn essentieel bij het onderscheiden van objecten die gelijk zijn in waarde maar verschillend in identiteit.
Voorbeeld: Identiteitsvergelijking
x = 20 y = 20 if x is y: print('x & y have the same identity') y = 30 if x is not y: print('x & y have different identities') Operator-precedenties
Python volgt een strikte precedentië-hiërarchie om expressies zonder haakjes op te lossen. De hoogste precedens is machtsverheffing (**), gevolgd unaire operators, vermenigvuldiging/deling/modulus, optelling/aftrekking, vergelijkingsoperators, identiteitsoperators, lidmaatschapsoperators, logische operators en tenslotte toekenningsoperators.
Het gebruik van haakjes overschrijft de standaard-precedentie en maakt expressities expliciet.
Voorbeeld: Precedentie in actie
v = 4 w = 5 x = 8 y = 2 z = (v + w) * x / y print('Value of (v + w) * x / y is', z) # Output: 28.0 Python 2-compatibiliteit
Hieronder staan equivalente snippets voor Python 2, die print-statements zonder haakjes gebruikt.
# Rekenkundige operators x = 4 y = 5 print x + y # Vergelijkingsoperators x = 4 y = 5 print 'x > y is', x > y # Toekenningsoperators num1 = 4 num2 = 5 print 'Line 1 - Value of num1:', num1 print 'Line 2 - Value of num2:', num2 # Samengestelde toekenning num1 = 4 num2 = 5 res = num1 + num2 res += num1 print 'Line 3 - Result after res += num1:', res # Logische operators a = True b = False print 'a and b is', a and b print 'a or b is', a or b print 'not a is', not a # Lidmaatschapsoperators x = 4 y = 8 sample_list = [1, 2, 3, 4, 5] if x in sample_list: print 'Line 1 - x is available in the list' else: print 'Line 1 - x is not available in the list' if y not in sample_list: print 'Line 2 - y is not available in the list' else: print 'Line 2 - y is available in the list' # Identiteitsoperators x = 20 y = 20 if x is y: print 'x & y have the same identity' y = 30 if x is not y: print 'x & y have different identities' # Operator-precedenties v = 4 w = 5 x = 8 y = 2 z = (v + w) * x / y print 'Value of (v + w) * x / y is', z
Samenvatting
- Rekenkundige operators hanteren numerieke berekeningen.
- Vergelijkingsoperators bepalen relationele waarheid.
- Toekenningsoperators slaan waarden op; samengestelde varianten combineren operaties.
- Logische operators regelen stroomcontrole; bitwise operators manipuleren bits.
- Lidmaatschapsoperators testen sequence-bevat.
- Identiteitsoperators vergelijken object-identiteiten.
- Operator-precedentie dicteert evaluatievolgorde; haakjes kunnen deze overschrijven.
Python
- C# Bitwise en Bit Shift Operators: Een Uitgebreide Gids
- Bitwise Operatoren in C Beheersen: AND, OR, XOR, Shifts & Complement
- Python Variabelen, Constanten en Literals – Een uitgebreide gids
- Python Datatypes onder de knie krijgen: Een praktische gids
- Python Operators onder de knie krijgen: Een uitgebreide gids
- Python Functie-argumenten onder de knie krijgen: Positionele, Keyword en Default Parameters
- Python-dictionaries beheersen: aanmaken, manipuleren en geavanceerde technieken
- Python-iterators: hoe ze werken en hoe je je eigen maakt
- Python-closures uitgelegd: hoe geneste functies variabelen vangen
- Python datetime beheersen: praktische gids voor datums, tijden en tijdzones
- Python-dictionaries: Sleutel/waardeparen toevoegen, bijwerken en beheren