【问题标题】:IndexError: invalid index to scalar variableIndexError:标量变量的索引无效
【发布时间】:2014-11-05 13:03:59
【问题描述】:

我创建了以下函数:

def c_min(a,b):
    result= [x - y for x in a for y in b]
    min=np.min(result)
    return min

我创建了一个包含两个列表的测试文件:

a=[1,2,3] and b=[4,5,6]

当我运行该函数时,我得到了正确的结果。

但是,当我在初始代码中运行该函数时,我在标题错误中出现了上述情况。 需要注意的是,初始代码中的函数应用在两个数组中。一个大小为 1,它是 numpy.float64,另一个大小为 3,它是 numpy.ndarray。 为什么它可以应用于列表而不是数组?

【问题讨论】:

  • 您能发布引发此错误的输入吗?
  • 你不能迭代标量

标签: python arrays list


【解决方案1】:

ab 都必须是 numpy.ndarray。如果其中一个是标量,for ... in ... 构造将失败。

【讨论】:

    【解决方案2】:

    正如帖子中提到的,使用numpy.arraynumpy.ndarray可以解决问题。

    【讨论】:

      猜你喜欢
      • 2020-05-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-03
      • 1970-01-01
      • 1970-01-01
      • 2022-10-14
      相关资源
      最近更新 更多