python - 如何使用 isinstance 测试所有可能的整数类型
问题描述
使用整数时,有多种类型可用(例如 int、numpy.int8、numpy.int16 等)。如果我编写一个需要一个变量为整数的通用函数,我如何针对 Python/numpy 中所有可能的“整数”类型测试该类型?关于花车也可以问同样的问题。我最初认为这是
isinstance(np.int64(5), int)
会/应该工作,但事实并非如此。
有没有办法可以测试所有可用整数类型的整数变量?
解决方案
在Python中只有一种int
类型。如果要测试 中的所有整数类型numpy
,加上内置int
类型,可以使用:
isinstance(x, (int, np.integer))
wherenp.integer
是所有标量 numpy 整数类型的抽象基类。同样对于浮动,
isinstance(x, (float, np.floating))
推荐阅读
- c# - 从 csv 文件(逗号分隔)导入两列或多列数据并使用 c# 跳过第一行
- macos - 在 Mac 上安装 psycopg2,找不到 pg_config 可执行文件
- python - 如何将二阶差分时间序列数据的 ARIMA 拟合值恢复为原始形式?
- r - R 中 CARET 中的训练、验证、测试拆分模型
- c - CS50 - PSet4(滤镜)- 模糊
- javascript - 如何在 jQuery/JavaScript 中获取行 ID onClick?
- ios - 将框架缓冲区运算符与 keepFull 策略相结合:它有什么作用?
- javascript - 如何将 TEMPLATE 元素附加到 shadow dom?
- python - Fast.ai learn.export() 在没有明显代码更改的情况下停止工作
- reactjs - React Hooks LocalStorage setState 覆盖元素