Мне нужно проверить, имеет ли переменная тип int
или любой из np.int*
, np.uint*
, предпочтительно используя одно условие (т.е. no or
).
После некоторых тестов я предполагаю, что:
-
isinstance(n, int)
будет соответствовать толькоint
иnp.int32
(илиnp.int64
в зависимости от формы пластины), -
np.issubdtype(type(n), int)
похоже, соответствует всемint
иnp.int*
, но не соответствуетnp.uint*
.
Это приводит к двум вопросам: будет ли np.issubdtype
соответствовать любому типу подписанных ints? Можно определить в одной проверке, является ли число любым типом подписанного или unsigned int?
Это о тестировании целых чисел, тест должен возвращать False
для float-like.