assert-Statement überprüft Bedingungen und wirft einen AssertionError wenn sie nicht gegeben sind
es soll genutzt werden um während des Programmierens Fehler zu finden die (wenn der Code das tut was er tun soll) nicht auftreten dürften
es geht also um die Überprüfung des Codes
es soll geprüft werden das keine Bedingungen auftreten die nicht auftreten können wenn der Code richtig ist
es geht
nicht
um die Überprüfung während der normalen Laufzeit
es sollen damit keine Benutzer-, Umgebungs- oder externen Input-Parameter geprüft werden
dafür gibt es normale Exceptions
AssertionErrors sollen nicht abgefangen werden
es macht in der Regel Sinn asserts während der produktiven Ausführung per „python3 -o“ abzuschalten