Python Basis Operators: Rekenkundig, Vergelijking, Logisch & Meer
Operator Types
Operatoren zijn constructies die de waarde van operanden kunnen manipuleren.
Bekijk de expressie 4 + 5 = 9. Hier zijn 4 en 5 de operanden en + de operator.
Typen Operatoren
Python ondersteunt de volgende typen operatoren:
- Rekenkundige Operatoren (Arithmetic Operators)
- Vergelijkingsoperatoren (Comparison/Relational Operators)
- Toewijzingsoperatoren (Assignment Operators)
- Logische Operatoren (Logical Operators)
- Bitwise Operatoren (Bitwise Operators)
- Lidmaatschapsoperatoren (Membership Operators)
- Identiteitsoperatoren (Identity Operators)
Laten we alle operatoren één voor één bekijken.
Python Rekenkundige Operatoren
Neem aan dat variabele a 10 bevat en variabele b 20, dan:
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| + Optelling | Telt waarden aan beide kanten van de operator op. | a + b = 30 |
| - Aftrekking | Trekt rechter operand van linker operand af. | a – b = -10 |
| * Vermenigvuldiging | Vermenigvuldigt waarden aan beide kanten. | a * b = 200 |
| / Deling | Deelt linker operand door rechter operand. | b / a = 2 |
| % Modulus | Deelt linker operand door rechter en retourneert rest. | b % a = 0 |
| ** Exponent | Voert exponentiële (macht) berekening uit. | a**b = 10 tot de macht 20 |
| // | Vloerdeling – Deling waar het resultaat het quotiënt is zonder decimalen. Bij negatieve operand wordt afgerond naar negatieve oneindigheid. | 9//2 = 4, 9.0//2.0 = 4.0, -11//3 = -4, -11.0//3 = -4.0 |
Python Vergelijkingsoperatoren
Deze operatoren vergelijken de waarden aan beide kanten en bepalen de relatie. Ze heten ook relationele operatoren.
Neem aan dat variabele a 10 bevat en variabele b 20, dan:
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| == | Als de waarden van twee operanden gelijk zijn, wordt de voorwaarde true. | (a == b) is niet true. |
| != | Als waarden niet gelijk zijn, wordt voorwaarde true. | (a != b) is true. |
| <> | Als waarden niet gelijk zijn, wordt voorwaarde true. Vergelijkbaar met !=. | (a <> b) is true. |
| > | Als linker operand groter is dan rechter, wordt voorwaarde true. | (a > b) is niet true. |
| < | Als linker operand kleiner is dan rechter, wordt voorwaarde true. | (a < b) is true. |
| >= | Als linker operand groter of gelijk is aan rechter, wordt voorwaarde true. | (a >= b) is niet true. |
| <= | Als linker operand kleiner of gelijk is aan rechter, wordt voorwaarde true. | (a <= b) is true. |
Python Toewijzingsoperatoren
Neem aan dat variabele a 10 bevat en variabele b 20, dan:
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| = | Wijst waarden van rechter operanden toe aan linker operand. | c = a + b wijst waarde van a + b toe aan c |
| += Optel EN toewijs | Tel rechter operand op bij linker en wijs resultaat toe aan linker. | c += a is equivalent aan c = c + a |
| -= Aftrek EN toewijs | Trek rechter operand af van linker en wijs resultaat toe aan linker. | c -= a is equivalent aan c = c - a |
| *= Vermenigvuldig EN toewijs | Vermenigvuldig rechter operand met linker en wijs resultaat toe aan linker. | c *= a is equivalent aan c = c * a |
| /= Deel EN toewijs | Deel linker operand door rechter en wijs resultaat toe aan linker. | c /= a is equivalent aan c = c / a |
| %= Modulus EN toewijs | Neem modulus met twee operanden en wijs resultaat toe aan linker. | c %= a is equivalent aan c = c % a |
| **= Exponent EN toewijs | Voer exponentiële berekening uit en wijs waarde toe aan linker operand. | c **= a is equivalent aan c = c ** a |
| //= Vloerdeling EN toewijs | Voer vloerdeling uit en wijs waarde toe aan linker operand. | c //= a is equivalent aan c = c // a |
Python Bitwise Operatoren
Bitwise operatoren werken op bits en voeren bit-voor-bit operaties uit. Neem a = 60 en b = 13; in binair: 0011 1100 en 0000 1101.
a = 0011 1100 b = 0000 1101 ----------------- a&b = 0000 1100 a|b = 0011 1101 a^b = 0011 0001 ~a = 1100 0011
De volgende bitwise operatoren worden ondersteund:
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| & Binary AND | Kopieert een bit naar resultaat als het in beide operanden bestaat. | (a & b) = 12 (0000 1100) |
| | Binary OR | Kopieert een bit als het in één van de operanden bestaat. | (a | b) = 61 (0011 1101) |
| ^ Binary XOR | Kopieert de bit als deze in één operand ingesteld is, maar niet in beide. | (a ^ b) = 49 (0011 0001) |
| ~ Binary Ones Complement | Unair; 'flipped' bits. | (~a) = -61 (1100 0011 in 2's complement) |
| << Binary Left Shift | Linker operand-waarde verschuift links met aantal bits van rechter operand. | a << 2 = 240 (1111 0000) |
| >> Binary Right Shift | Linker operand-waarde verschuift rechts met aantal bits van rechter operand. | a >> 2 = 15 (0000 1111) |
Python Logische Operatoren
De volgende logische operatoren worden ondersteund. Neem aan dat variabele a 10 bevat en variabele b 20:
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| and Logical AND | Als beide operanden true zijn, wordt voorwaarde true. | (a and b) is true. |
| or Logical OR | Als een van de twee operanden non-zero is, wordt voorwaarde true. | (a or b) is true. |
| not Logical NOT | Keert de logische staat van de operand om. | Not(a and b) is false. |
Python Lidmaatschapsoperatoren
Python's lidmaatschapsoperatoren testen op lidmaatschap in een sequence, zoals strings, lists of tuples. Er zijn twee lidmaatschapsoperatoren:
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| in | Evalueert tot true als een variabele in de gespecificeerde sequence gevonden wordt, anders false. | x in y, resulteert in 1 als x lid is van sequence y. |
| not in | Evalueert tot true als een variabele NIET in de sequence gevonden wordt, anders false. | x not in y, resulteert in 1 als x NIET lid is van sequence y. |
Python Identiteitsoperatoren
Identiteitsoperatoren vergelijken de geheugenlocaties van twee objecten. Er zijn twee identiteitsoperatoren:
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
| is | Evalueert tot true als variabelen aan beide kanten naar hetzelfde object wijzen, anders false. | x is y, resulteert in 1 als id(x) gelijk is aan id(y). |
| is not | Evalueert tot false als variabelen naar hetzelfde object wijzen, true anders. | x is not y, resulteert in 1 als id(x) niet gelijk is aan id(y). |
Python Operator Precedentie
De volgende tabel lijst alle operatoren van hoogste naar laagste precedentie:
| Nr. | Operator & Beschrijving |
|---|---|
| 1 | ** Exponentiatie (macht) |
| 2 | ~ + - Complement, unaire plus en min |
| 3 | * / % // Vermenigvuldigen, delen, modulo, vloerdeling |
| 4 | + - Optelling en aftrekking |
| 5 | >> << Rechts en links bitwise shift |
| 6 | & Bitwise 'AND' |
| 7 | ^ | Bitwise exclusieve 'OR' en gewone 'OR' |
| 8 | <= < > >= Vergelijkingsoperatoren |
| 9 | <> == != Gelijkheidsoperatoren |
| 10 | = %= /= //= -= += *= **= Toewijzingsoperatoren |
| 11 | is is not Identiteitsoperatoren |
| 12 | in not in Lidmaatschapsoperatoren |
| 13 | not or and Logische operatoren |
Python
- Python Datatypes onder de knie krijgen: Een praktische gids
- Python Operators onder de knie krijgen: Een uitgebreide gids
- Python Pass Statement onder de knie krijgen: Een praktische 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 Overzicht: Hoog-Niveau, Leesbaar, Interactief & Object-Georiënteerd
- Python Basis: Syntax & Fundamentals Onder de Knie Krijgen
- Java Essentials: Uitgebreide Gids voor Kern Operators