sum(list(range(n))) は sum(range(n)) より約 1.78 倍遅い
`sum(range(n))` は `sum(list(range(n)))` より約 1.8 倍速い(list を作る分だけ遅い)。
結果
| 実行 | sum(range(n)) | sum(list(range(n))) | 倍率 |
|---|---|---|---|
| 実行 1 | 17.008 | 31.215 | 0.54× |
| 実行 2 | 17.465 | 30.683 | 0.57× |
| 実行 3 | 18.552 | 31.157 | 0.60× |
3 回のばらつき: sum(range(n)) CV 3.7% / sum(list(range(n))) CV 0.8% / 倍率 CV 3.6%
測った条件
100 万要素。
この数字が当てはまらない場面
list がすでに手元にあるなら、この差は関係ありません。
再現コマンド
cd bench && python micro_py.py --out ../data/run.json --samples 21