NumPy ndarray语法的困难

2024-10-02 20:39:26 发布

您现在位置:Python中文网/ 问答频道 /正文

2

创建并打印一个名为“buckets”的新bucked数组,这样所有元素都会被覆盖10秒。然后,打印“buckets”

例39变成30,42变成40

我很难理解为什么这不能填充一个数组,遍历它,并将每一个非10的倍数设置为它所属的十组。我得到的错误是“IndexError:用作索引的数组必须是整数(或布尔)类型”

   print '2. '
   buckets = np.array(original)
   for i in buckets:
        for j in buckets:
            if buckets[i][j] % 10 != 0:
                buckets[i][j] = buckets[i][j] - buckets[i][j] % 10

   print buckets
   print '\n'

Tags: in元素类型for错误np整数数组
1条回答
网友
1楼 · 发布于 2024-10-02 20:39:26

表达式for i in buckets遍历buckets的每个的值,而不是行的索引。你知道吗

您可以获得数组的形状,然后遍历索引范围:

for i in xrange(a.shape[0]):       # use 'range' in Python 3.x
    for j in xrange(a.shape[1]):   # use 'range' in Python 3.x
        ...

相关问题 更多 >