Czy istnieje sposób na włączenie możliwości rejestrowania w programie IPython zarówno w przypadku danych wyjściowych, jak i danych wejściowych?Wyjście protokołu IPython?
To co plik dziennika wygląda obecnie:
#!/usr/bin/env python
# 2012-08-06.py
# IPython automatic logging file
# 12:02
# =================================
print "test"
Chciałbym mieć jeszcze jeden wiersz pokazać się:
#!/usr/bin/env python
# 2012-08-06.py
# IPython automatic logging file
# 12:02
# =================================
print "test"
# test
(#
jest, bo zakładamy, że jest potrzebna aby zapobiec złamaniu funkcji IPython'a logplay
)
Przypuszczam, że jest to możliwe przy użyciu notebooków IPython, ale na co najmniej jednej maszynie potrzebuję tego, jestem limitem ed do ipython 0.10.2.
EDYCJA: Chciałbym wiedzieć, jak skonfigurować to automatycznie, tj. W pliku konfiguracyjnym. Teraz mój config wygląda
from time import strftime
import os
logfilename = strftime('ipython_log_%Y-%m-%d')+".py"
logfilepath = "%s/%s" % (os.getcwd(),logfilename)
file_handle = open(logfilepath,'a')
file_handle.write('########################################################\n')
out_str = '# Started Logging At: '+ strftime('%Y-%m-%d %H:%M:%S\n')
file_handle.write(out_str)
file_handle.write('########################################################\n')
file_handle.close()
c.TerminalInteractiveShell.logappend = logfilepath
c.TerminalInteractiveShell.logstart = True
ale określając c.TerminalInteractiveShell.log_output = True
wydaje się mieć żadnego wpływu
Rozwiązanie wydaje się to robić w skrypcie uruchamiania, jak opisano tutaj: http://wiki.ipython.org/Cookbook/DatedLog (to było rozwiązanie dostarczone w http://stackoverflow.com/questions/11836612/gdzie-jak-w-jakim-kontekście-jest-ipythons-plik-konfiguracji-wykonano? lq = 1) – keflavich