擅长:python、mysql、java
<p>在numpy中构造数组的方式与在MATLAB中不同。在</p>
<p>其中MATLAB数组是<code>(y, x, z)</code>,numpy数组是<code>(z, y, x)</code>。您的3d numpy数组是一系列“堆叠”的2d数组,所以您索引的是“outside->;inside”(缺少更好的术语)。下面是数组定义的扩展,因此(希望)这会更有意义:</p>
<pre><code>[[[1, 2, 3],
[4, 5, 6], # Z = 0
[7 ,8 ,9]],
[[11 ,22 ,33],
[44 ,55 ,66], # Z = 1
[77 ,88 ,99]],
[[111 ,222 ,333],
[444 ,555 ,666], # Z = 2
[777 ,888 ,999]]
]
</code></pre>
<p>因此:</p>
^{pr2}$
<p><code>B</code>按预期返回<code>33</code>。在</p>
<p>如果你想用一种不那么费心的方法来索引数组,可以考虑像在MATLAB中那样生成它。在</p>