Mi piacerebbe essere in grado di salvare l'output TEXT di un notebook iPython cell in un file su disco.come salvare l'output di una cella nel notebook iPython?
Ho 2 ulteriori requisiti/richieste:
- essere in grado di eseguire nuovamente la cella e sovrascrivere la mia uscita con qualunque sia l'ultima è.
- visualizza anche l'output all'interno del notebook.
ho capito come usare la magia %%capture
per qualche risparmio di base delle cellule di un notebook ipython in un file, ma non sembra abbastanza flessibile: mantiene aggiungendo ogni volta che ho ri-eseguire il cellulare e ho non è possibile visualizzarlo all'interno della stessa cella.
Ecco quello che ho finora:
%%capture cap --no-stderr
print 'stuff'
with open('output.txt', 'w') as f:
f.write(cap.stdout)
# clear the cap by deleting the variable here?
# del cap
Quando provo a mettere cap.show()
dopo la scrittura, che non sembra per visualizzare. Invece, mette l'output nella variabile cap due volte.
Vuoi * tutto * l'output testuale o solo quello creato dalle istruzioni di stampa? A causa del meccanismo di visualizzazione di IPython, tutti gli oggetti hanno una rappresentazione testuale, quindi c'è più testo nel taccuino che visibile in primo luogo. – Jakob
Se si è appena dopo le dichiarazioni di stampa, dare un'occhiata alle risposte a [questa domanda] (http://stackoverflow.com/q/11325019/2870069) – Jakob