OK、似たようなスレッドが 3 つ見つかりましたが、それらはすべて C# のコマンドライン引数を扱っていました。私の質問は、コマンド ライン引数を cmd ウィンドウから IronPython に読み込むにはどうすればよいですか?
これらのドキュメントのセクション 2.1.1 を読んだ方法では、CPython と同じように動作するはずです。sys
モジュールをインポートして、sys.argv
配列から値を取得するだけです。そうではありません。これが私が試したテストコードです(ファイルz.py):
import sys
print sys.argv[0]
print sys.argv[1]
CPython (2.7.4) インタープリターを使用してこれを呼び出すとz.py testing
、期待どおりの結果が得られます。
E:\>c:\python27\python.exe z.py testing
z.py
testing
E:\>
しかし、IronPython (2.7.3) インタープリターを使用して呼び出すと、次のようになります。
Traceback (most recent call last):
File "E:\z.py", line 3, in <module>
IndexError: index out of range: 1
3 行目をコメントアウトして IronPython で再試行すると、正常に動作します。
E:\>z.py testing
E:\z.py
E:\>
が割り当てsys.argv[0]
られていますが、それだけです。コマンドライン引数は、 の追加要素として表示されることはありませんsys.argv
。
したがって、私が見逃している追加のステップがあるかsys.argv
、IronPython でこの目的のために機能しないだけです。いずれにしても、モジュールに引数を認識させるにはどうすればよいですか?