たまに話題になるので調べてみました。
実行環境
- Windows11 25H2 (26200.7171)
- Python 3.14.0 (tags/v3.14.0:ebf955d, Oct 7 2025, 10:15:03) [MSC v.1944 64 bit (AMD64)]
ソースコード
for有り

for無し


結果
timeコマンドで計測
| 実行速度(秒) | |
|---|---|
| for有り | 0.3214845 |
| for無し | 0.5951633 |
for云々以前にファイルサイズがネックになっていそうです。
ソースコード内で計測
timeモジュールのperf_counter関数を使用して計測。
| 実行速度(秒) | |
|---|---|
| for有り | 0.003906099998857826 |
| for無し | 0.002697099989745766 |
そこそこ差が出ました。
まとめ
まあ昔はforループをなくしたら数万倍早くなるとかざらにありましたが、最近のプログラミング言語や実行環境では気にするほどの差は出ないと思います。
パフォーマンスを求めるなら相応の言語や実装を考えるべきですし、可読性の観点からもforループを削るのは悪手だと思います。

コメント