Python 如何从内存中访问形状不规则数组中的项目?

Python 如何从内存中访问形状不规则数组中的项目?,python,arrays,performance,indexing,Python,Arrays,Performance,Indexing,我知道n维数组作为一维数组存储在内存中,如: [[5,4],[2,3] 可以存储为 5423 通过了解阵列的形状,可以轻松访问项目。 但是如果你有一个数组,比如: [[5,4],[1,2,3] 我猜它仍然像这样存储: 54123 如何访问此阵列中形状不规则的项?有没有一个快速的公式 或者它的存储方式更像: obj1-obj2 这就把你送到了 obj1 = [5,4] obj2 = [1,2,3] 我的第二个例子似乎是正确的。它不会是不规则的形状。该数组将只包含不同大小的项。访问[[1,2],[

我知道n维数组作为一维数组存储在内存中,如:
[[5,4],[2,3]

可以存储为
5423

通过了解阵列的形状,可以轻松访问项目。
但是如果你有一个数组,比如:
[[5,4],[1,2,3]

我猜它仍然像这样存储:
54123

如何访问此阵列中形状不规则的项?有没有一个快速的公式

或者它的存储方式更像:
obj1-obj2

这就把你送到了

obj1 = [5,4]
obj2 = [1,2,3]

我的第二个例子似乎是正确的。它不会是不规则的形状。该数组将只包含不同大小的项。访问
[[1,2],[3,4,5]
[0][1]
项会将计算机作为项目0发送到
[1,2]
,然后可以正常找到
[1,2]
[1]
。列表不会表示为
1 2 3 4 5

这些是列表,而不是数组。就像您在最后显示的那样。列表不需要存储在单个连续的内存块中。至于访问n维列表,要从您的示例中获取值为
1
的项,它将是
example[1][0]
@Barmar是的,我对名称的选择很草率。没有很好的公式,它只是一维的,里面有物体?是的。numpy中有数组,它们可能是连续存储的,但它们也不允许不规则的形状。