Вы можете использовать np.sctypes
:
lookup = {t().itemsize: t for t in np.sctypes['int']}
lookup
# {1: <class 'numpy.int8'>, 2: <class 'numpy.int16'>, 4: <class 'numpy.int32'>, 8: <class 'numpy.int64'>}
Или использовать np.sctypeDict
и f-строки:
def lookup(n):
return np.sctypeDict[f'i{n}']
[lookup(n) for n in (1, 2, 4, 8)]
# [<class 'numpy.int8'>, <class 'numpy.int16'>, <class 'numpy.int32'>, <class 'numpy.int64'>]