擅长:python、mysql、java
<p>如果只使用<code>for</code>循环,则迭代在第一个维度上,如果数组只有一个维度,则这将是元素,如果是2D,则是行,如果是3D,则将在平面上迭代。。。</p>
<p>然而<code>nditer</code>是一个ND(代表n维)迭代器。它将遍历数组中的每个元素。大概是吧相当于<code>for item in your_array.ravel()</code>(在数组的平坦“视图”上迭代)。对于一维数组,它在元素上迭代;对于二维数组,它首先在第一行中的元素上迭代,然后在第二行上迭代,依此类推。</p>
<p>注意<code>nditer</code>比它强大得多,它可以一次在多个数组上迭代,您可以缓冲迭代和许多其他东西。</p>
<hr/>
<p>但是对于NumPy,您通常不想使用<code>for</code>-循环或<code>np.nditer</code>。有许多“矢量化”操作使得手动迭代(在大多数情况下)不必要。</p>