timeitが細微な粒度レベルを見るのに対して、profile および pstats モジュールは、大きめのコードブロックを律速している部分を見つけるためのツールを提供する
>>> from timeit import Timer
SyntaxError: cannot assign to literal
>>> Timer ('t=a; a=b; b=t', 'a=1; b=2').timeit()
0.021119261000023926
>>> Timer ('a, b = b, a', 'a=1; b=2').timeit()
0.02064659699999538
# upper formula
>>> a = 1
>>> b = 2
>>> tmp = a
>>> a = b
>>> b = tmp
>>> print(a, b)
2 1
# lower formula
>>> a = 1
>>> b = 2
>>> a, b = b, a
>>> print(a, b)
2 1