私は実験室でさまざまな計測器を制御するためのPythonユーザーインターフェイスをプログラミングしています。スクリプトが対話形式で実行されないと、スクリプトの最後で計測器との接続が失われてしまい、非常に問題が発生する可能性があります。私は対話的にスクリプトを実行することをユーザーが「覚えている」ように助けたい。IPython run magic: "run -i"のエイリアスを作成するには?
私は2つの可能な方法を考えています。まず、タイトルに指定されているように、私はrun -i
のエイリアスを作ることができる:
%alias_magic lab_run run -i
が、これはエラーを返します:
UsageError: unrecognized arguments: -i
は、これを回避する方法はありますか?
また、-i
フラグが渡され、そうでない場合はraiseエラーが発生した場合、スクリプト内で検出できました。ここで私の前の質問で説明したように、私は、%の実行フラグを読み取る必要があるため
In [1]: import sys
In [2]: run -i test.py random args
['test.py', 'random', 'args']
は、私は、IPYファイルを使用することはできません:しかし、それはsys.argv
リストに表示されません How to add a custom flag to IPython's magic commands? (.ipy files)
誰でもこの問題の解決策を見ていますか?
'-i'%のrun''によって解析され、それがに渡すエキストラではありませんされてあなたのスクリプトは 'sys.argv'です。 – hpaulj
'%alias_magic'は引数を取らないように見えますが、2つの文字列だけです。 – hpaulj