timeitを使用して単純なPythonメソッドの時間を計測しようとしていますが、次のエラーが発生し続けます
File "<timeit-src>", line 6, in inner
KeyError: 'tree'
以下に示すように、コードは「ツリー」オブジェクトを作成し、そのオブジェクトをタイマーオブジェクトに渡そうとします。私はこれが問題があるところだと思います。
代わりにbinarytree.mkthing(0,10)をTimerに渡すと、コードが機能することに注意してください。ただし、これを行うと、すべてのパスでmkthingが呼び出されます。一度だけ呼び出して、再利用したいです。
どうすればいいですか?
if __name__=="__main__":
tree = mkthing(0,10)
t1=timeit.Timer("binarytree.traverse_asc(locals()['tree'],binarytree.printout)","import binarytree")
print t1.repeat(2, 3)