1

IPython セッション中に次のことができるようにしたいと思います。

  1. 変数の内容をASCIIファイルでディスクに簡単に保存
  2. 特定のコマンドの stdout をディスクに簡単にリダイレクト

簡単に言うと、たとえば a を使用することを意味します(magicつまり、IPython で複数行のステートメントを入力したり、ファイル記述子を開いたりする必要はありません)。

このスレッドのこの回答は、使用を提案しています

%edit some_variable

( の値に基づいて$EDITOR) エディターで変数の値を開き、後でディスクに保存することができます。これは素晴らしいように聞こえますが、通常の Python 変数で試してみると

> my_variable = 'Hello world'
> %edit a

私はTypeError: 'NoneType'object is not iterable(ちなみに、$EDITOR私が使用する他のプログラムがそれに依存しているので、私のenv.変数がうまく機能することを知っています。どちらの方法$EDITORemacsclient私の場合です)

私も試しました:

%save 'test.txt' print(my_variable)

ステートメントの出力を にリダイレクトすることを期待していますがprint(my_variable)test.txt代わりに次のエラーが発生します。

'print(a)' was not found in history, as a file, url, nor in the user namespace.

これを達成する方法について何か考えはありますか?

4

2 に答える 2

2

で変数をファイルに保存し、魔法で%store foo > foo.txtstdout/stderr をキャプチャできます。%%capture

于 2014-03-14T14:41:13.367 に答える