Parfois, vous souhaiterez peut-être stocker la sortie de la magie de ligne IPython (Jupyter), de la magie des cellules et d'autres sorties dans un objet (variable) au lieu de la sortie standard et la traiter plus tard. (Exemple: je veux la sortie, pas la valeur de retour de la fonction exécutée)
Ce n'est peut-être pas une méthode très complimentée, mais je vais essayer de l'implémenter en sautant temporairement la destination de sortie de sys.stdout
à StringIO
.
try:
from io import StringIO # Python3
except:
from cStringIO import StringIO # Python2
import sys
old_stdout = sys.stdout
sys.stdout = mystdout = StringIO()
%% time
%%time
for i in range(1000000):
i ** 2
sys.stdout = old_stdout
clock_times = mystdout.getvalue()
print(clock_times)
CPU times: user 467 ms, sys: 0 ns, total: 467 ms
Wall time: 469 ms
Recommended Posts