擅长:python、mysql、java
<p>我做了一些分析,结果完全违背直觉。
对于简单的数组访问操作,numpy和array.array比原生Python数组慢10倍。</p>
<p>注意,对于数组访问,我正在执行以下形式的操作:</p>
<pre><code>a[i] += 1
</code></pre>
<p>个人资料:</p>
<ul>
<li><p>[0]*2000万</p>
<ul>
<li>通道:2.3M/秒</li>
<li>初始化:0.8s</li>
</ul></li>
<li><p>numpy.zeros(shape=(20000000,),dtype=numpy.int32)</p>
<ul>
<li>接入:160K/秒</li>
<li>初始化:0.2s</li>
</ul></li>
<li><p>array.array('L',[0]*20000000)</p>
<ul>
<li>访问:175K/秒</li>
<li>初始化:2.0s</li>
</ul></li>
<li><p>array.array('L',(0表示范围(20000000)内的i)</p>
<ul>
<li>访问:175K/秒,大概是基于另一个数组的配置文件</li>
<li>初始化:6.7s</li>
</ul></li>
</ul>