Вместо использования необходимого setup
параметра для настройки среды timeit, вы можете просто передать метод (или все, что можно вызвать):
t = Timer(foo.runAlgorithm)
Издокументация:
Изменено в версии 2.6: параметры stmt и setup теперь могут также принимать объекты, которые можно вызывать без аргументов.
Если вам нужно передать некоторые аргументы, выможно использовать функцию каррирования с functools.partial
, например:
class C:
def printargs(self, a, b):
print a, b
from functools import partial
foo = C()
t = Timer(partial(foo.printargs, 1, 2))