an alternative to assert - guaranteed to raise
A short way to check for conditions and raise if it fails, in Python.
I get annoyed to need writing all the time variations around:
if not isinstance(my_bool, bool): raise ValueError("my_bool should be a bool")
And as pointed several places on the net,
assert cannot really be trusted for performing this sort of checks, as asserts can be disabled with the
-O flag, see for example: https://stackoverflow.com/questions/1273211/disable-assertions-in-python .
The raise_assert package contains a single function that allows writing:
from raise_assert import ras ras(isinstance(my_bool, bool))
or, if you want an error message (but this is usually not needed, as the stack trace is usually explicit enough):
from raise_assert import ras ras(isinstance(my_bool, bool), "my_bool must be a bool")
pip install raise_assert
ras is shortland for both raise_assert and 'rien à signaler', 'nothing to signal' in French.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.