rangeとxrangeってどれくらい違うの? -timeitを試す-

30分プログラム、その440。timeitというステキな時間計測モジュールを見つけたので、rangeとxrangeの速度を比べてみた。
実際に走らせるコードを文字列で与えるのがなんとも。まあ、キャッシュとかが効かないようにするためなんだろうけども。

使い方

$ python range-xrange.py
range: 25.5273160934
xrange: 18.9897739887

やっぱり、xrangeのほうが速いよねぇ。まあ、あたりまえだけど。

ソースコード

#! /usr/bin/python
# -*- mode:python; coding:utf-8 -*-
#
# range-xrange.py -
#
from timeit import *

print "range:", Timer(r"""
for i in range(0,100):
  pass
""").timeit()

print "xrange:", Timer(r"""
for i in xrange(0,100):
  pass
""").timeit()