如何用Python的for循环替换NumPy数组元素为指定小数?
使用for循环替换NumPy数组元素为倒数序列
你可以通过遍历数组的索引,逐个为每个位置赋值对应的倒数,代码实现如下:
import numpy as np # 创建初始的全1数组 arr100 = np.ones(100) # 遍历每个索引,替换为对应倒数 for i in range(100): arr100[i] = 1 / (i + 1)
关键细节说明:
range(100)生成0到99的整数,刚好对应数组的所有索引位置。- 索引
i对应的目标值是1/(i+1):i=0时得到1/1=1,i=99时得到1/100,完全匹配你的需求。 - 直接通过索引
arr100[i]赋值,会直接修改NumPy数组的对应元素。
顺便提一句:如果不限制必须用for循环,NumPy的向量化操作会更高效,比如arr100 = 1 / np.arange(1, 101),一行就能完成。但既然你指定了用for循环,上面的代码就可以完美解决问题。
内容的提问来源于stack exchange,提问作者MrNut
相关产品推荐
相关产品推荐

