I am working with numpy arrays of a range of data types (uint8, uint16, int16, etc.). I would like to be able to check whether a number can be represented within the limits
You're looking for numpy.iinfo for integer types. Documentation here.
numpy.iinfo
There's also numpy.finfo for floating point types. Documentation here.
numpy.finfo