python - 无符号数和有符号数的numpy总和变为 float

标签 python numpy

为什么答案是 float ?我认为它应该是一个整数。

>>> import numpy as np
>>> np.uint64(12)
12
>>> np.uint64(12) + int(4)
16.0
>>> 

最佳答案

基于最近的 reddit post .

这就是 Numpy 函数旨在为整个输入数据范围返回一致值的方式。

16 位无符号和有符号整数都适合 int32,因此

>>> np.uint16(4) + np.int16(5)
9

然而,对于 uint64 和 int64,适合所有可能值的最小数据类型是 float64。

关于python - 无符号数和有符号数的numpy总和变为 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43788845/

相关文章:

python - 微分数据点的多项式插值集

python - 预期 Zero_padding2d_1_input 具有形状 (None, 3, 875, 375),但得到的数组具有形状 (1, 375, 875, 3)

python - 为什么 nump.cov() 和 np.std() 计算的相关性与 np.corrcoef() 计算的结果不同

python - Power BI(PBIX) - 解析布局文件

python - Odoo 11 : get cron id or name inside the called method for ir. 手动创建的 cron 不仅仅是从 XML 创建的

python - 选择 matplotlib 中要绘制的子图

python - 如何在VS Code中分离Python调试器并让代码完成运行?

python - "append"多维 numpy 数组的正确方法?

python - 如何一次从数组中删除多个值

python - 如何在 Netbeans 8.0.2 中创建 Django 项目