Op een mondeling examen logica:
Student: ik ga eerlijk zijn professor, ik ben echt niet goed in logica.
Professor: Spring uit het raam!
Student: Bent u zot? Neen!
Professor: Voila, je kan wel logisch nadenken.
Net zoals we gezien hebben dat er wiskundige operatoren zijn voor integers en floats (+, -, / etc.) zijn er ook logische operatoren voor booleans.
Er zijn drie fundamentele operatoren.
not
is de negatie van de boolean. Deze zet True
om in False
en vice versa.
and
(en) geeft True
wanneer beide booleans True
zijn en False
in de andere gevallen.
or
(of) geeft True
wanneer één of meer booleans True
zijn en wanneer beide False
zijn geeft het ook False
.
Test volgende gevallen in de pythonshell:
Net zoals er de volgorde der bewerkingen is in de wiskunde is er ook een volgorde van uitvoeren voor logische operatoren. De volgorde is not
, and
, or
. Doordat deze weinig gekend is wordt er sterk geadviseerd om voldoende haakjes te plaatsen zodanig je code niet twijfelachtig wordt geïnterpreteerd.
Je kan dus net zoals in de wiskunde complexe bewerkingen doen. Test zelf:
Dit deel is enkel voor enthousiastelingen.
xor (exclusive or) is een logische operator afgeleid uit de drie fundamentele operatoren. Uit volgende voorbeelden probeer je zelf te ontdekken wat deze wilt zeggen. (xor wordt in python geschreven door ^
)
Probeer nu zelf xor uit te drukken met enkel de fundamentele operatoren.
Voor meer informatie lees H6.1.4 Logische operatoren in het boek.