【问题标题】:Confused about Python 2D Array indices对 Python 2D 数组索引感到困惑
【发布时间】:2021-08-16 09:32:58
【问题描述】:

我刚刚开始学习 Python。最近,我在理解 python 二维数组时遇到了麻烦!在 C 中,数组维度/下标可视为 int A[5][5] int A[5][5][5]

在 Python 中,具有 1 个索引的 arr([3,5,7]) 是一维数组。但是有 3 个索引,([1,2,3],[7,5,4],[6,4,9]) 它被视为 2 个数组!

谁能帮我理解一下,2D 数组在 Python 中有多少个索引以及如何识别数组的维度?

【问题讨论】:

  • 你能开发吗: - Python 没有内置数组,但有列表(和元组) - 有一个 array 模块,但构造函数是 array() 而不是 arr() - @ 987654328@ 模块带来了数组,但构造函数也是array() 而不是arr()

标签: python arrays multidimensional-array


【解决方案1】:

部分是下面数组的值是整数:

[3, 5, 7]

这是一个包含数字的列表,所以它只有一个维度。

但下面列表的值也是列表:

[[1, 2, 3], [7, 5, 4], [6, 4, 9]]    

如你所见,它是一个嵌套数组,值不是整数,值的值是整数。

【讨论】:

  • @voidBrain X=[[1, 2, 3], [7, 5, 4], [6, 4, 9]] 是一个二维数组,它有 2 个维度
  • 我还是很困惑! :( 我无法区分 2D 和 3D 数组!有些网站说这 3 个列表包含 X=[[1, 2, 3], [7, 5, 4], [6, 4, 9]] 是 2D 数组! !
【解决方案2】:

这些不是索引,您实际上是在输入元素。 x = np.array([3,5,7]) 看起来像:

3 5 7

虽然y = np.array([[1,2,3],[7,5,4],[6,4,9]]) 看起来像:

1 2 3
7 5 4
6 4 9

索引用于访问数组的元素/切片,N 维数组有 N 个索引。所以你可以用x[1] 得到5,用y[1,0] 得到7

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-08
    • 1970-01-01
    • 2012-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多