pythonでコードの実行時間を測定するには

 課題に、プログラムを走らせて時間を測定するというものがありました。
で、Pythonの勉強がてら、コードの実行にかかる時間を測定しようと思いまして、調べることに

Timerクラスのtimeit()を使う

以下を参照

10.10 timeit -- 小さなコード断片の実行時間計測

Python Performance Tips

で、計算するときの速度を量ってみました。

from timeit import Timer

def time1():
	n = 0
	for i in range(10):
		n += 1
	return n
	
t1 = Timer(setup='from __main__ import time1', stmt='time1()')

print t1.timeit()

実行結果が秒数で出てくるらしい

C:\Documents and Settings\user>c:\Python25\Python "C:\Documents and Settings\user\デスクトップ\test.py"
3.3634020525

止まったように見えて実行してた

 timeit()は引数を指定しないとデフォルト値が100万だそうで、つまりTimerに入れた関数とか実行できる文を100万回実行して、かかった秒数を浮動少数で返してくれるものです。
最初、for in i range(100)として実行してましたが、動かないので止まっちゃった?と思ってましたw もちろん実行はしていまして、20秒ぐらいかかったかな。
 このTimerクラスはPython2.3から追加されたクラスのようで、jython2.2.1には実装されていないっぽい?ようです。多分

これで課題も進むか

良かった良かった。ホッとした。Zzzz って寝ちゃだめ><