gpt4 book ai didi

python - 将值分配给 numpy 数组中的位置而不修改数组

转载 作者:行者123 更新时间:2023-11-30 22:21:57 24 4
gpt4 key购买 nike

使用数组时如何获取精确值?为什么结果是 array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0]) 而不是 0.7?

overlap= np.array([0]*10)
tempi = np.zeros(10)
for i in range(10):
for j in range(10):
tempi[j] = 0.7;
overlap[i] = max(tempi)
print(max(tempi))

overlap

最佳答案

overlap 被(隐式)声明为整数数组。当您将 float 分配给整数数组中的位置时,它们会被截断(隐式强制为整数)。

您想要做的是将 overlap 声明为 dtypefloat -

overlap = np.array([0] * 10, dtype=np.float)

或者,

overlap = np.array([0.] * 10)

再次运行此命令,您将得到您所期望的结果。

关于python - 将值分配给 numpy 数组中的位置而不修改数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48484358/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com