Something I learns recently..
- NumPy has its own internal warning architecture on top of Pythons, which can be specifically controlled
- So, something Numpy will just produce a
RuntimeWarningwithout actually throwing an exception
probs = np.array([0.0, 1.0]) np.prod(probs)**(-1/len(probs))
Numpy produces a RuntimeWarning, not an exception