Capture o resultado de uma função mágica do IPython

Estou tentando capturar o objeto resultante da função mágica do IPython Notebook. Especificamente%timeit

Então, o código a seguir ...

import time
def say_hello(n):
    time.sleep(n)
    print "hello"

t = %timeit say_hello(5)

Imprime no stdout:

1 loops, best of 3: 5 s per loop

No entanto, eu gostaria de capturar o resultado de%timeit say_hello(5) na variávelt.

Um objeto resultante chamadoTimeitResult é gerado por%timeit, mas não consigo descobrir como acessá-lo em um Notebook.

Eu gostaria de uma solução mais limpa do que ter que capturar manualmente o stdout usandosys.stdout truques (esse código fará parte de uma apresentação, então estou tentando mantê-lo o mais direto possível). Alguém tem alguma ideia?