gpt4 book ai didi

python - 分配给数组元素的值结果为零

转载 作者:太空宇宙 更新时间:2023-11-04 00:09:57 26 4
gpt4 key购买 nike

问题:为什么我为其分配了非零值的列表元素变为零?

有一个名为 eta 的列表,其中包含许多不同的值。有了这个列表,想创建一个新列表a,其中每个元素a[i],等于eta[i+1]-eta[i ]eta[i+1]-eta[i] 的值可以计算并且可以检查它是否为我提供了一个非零值,但是当我创建一个 for 循环并运行它时 对于某个范围内的 i,它出于某种原因设置 a[i] = 0

代码如下:

import numpy as np

a = np.arange(5)
for i in range(5):
a[i] = eta[i+1]-eta[i]

尝试为每个步骤打印 eta[i+1]-eta[i] 的值,结果是一个非零数字,但如果打印 a[i] 结果为零。 Screenshot of code with prints .

最佳答案

在调用 np.arange() 时需要指定数据类型,否则它会推断索引应该是 int,因为传入的参数是 5(一个 int)。

像这样的东西会起作用。

a = np.arange(5, dtype='float')

在这里阅读更多关于数据类型的信息:https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.dtype.html#numpy.dtype

关于python - 分配给数组元素的值结果为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52900317/

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