2010-12-04 29 views
21

私はPython & Eclipseには新しく、Eclipse(Pydev)内で実行されるスクリプトにコマンドライン引数を渡す方法を理解するのが難しい。Eclipse(Pydev)内のPythonスクリプトにコマンドライン引数を渡す

The following linkは、pythonスクリプトにコマンドライン引数を渡す方法を説明しています。

は、 argecho.py(上記のリンクからコード)をモジュールにコマンドライン引数を渡すには

#argecho.py 
import sys 

for arg in sys.argv: 1 
    print arg 
私はPythonのコンソールに入力する必要があります

[[email protected] py]$ python argecho.py    
argecho.py 

または

[[email protected] py]$ python argecho.py abc def  
argecho.py 
abc 
def 

方法Eclipse(Pydev)内のPythonスクリプトに同じ引数を渡しますか?

ありがとうございます!

答えて

10

あなたはあなたのプログラムが対話的に引数をお願いしたい場合は、それらのようなコマンドライン引数、であることをやめます。しかし、あなたはこれを(デバッグのためだけに)行うことができます。これは、プログラムがコマンドライン引数として見る値を対話的に入力できるようにします。

import sys 
sys.argv = raw_input('Enter command line arguments: ').split() 

#Rest of the program here 

物事のアンドリューの方法は、より良いくらいであることに注意してください。また、python 3. *を使用している場合は、raw_input,

+0

私は対話型の意味は、Eclipse内でコンソール/シェルを開き、スクリプトを実行するためのコマンドを入力することです。たとえば、Ctrl + Alt + Enterキーを押すと、開くコンソールを選択できます。 – newprint

52

ツールバーの再生ボタンの下向き矢印をクリック - >設定を実行 - (ダブルクリック)Python Run - >引数の右側にあるタブ。

そこから、プログラム引数のテキストボックスに必要事項を記入することができます

enter image description here

+2

引数を対話的に渡す方法はありますか? – newprint

+1

ネイティブではありません。次善策は、Blue Peppersが推奨している標準入力から読み込むことです。 –

2

の代わりにinputにする必要があります。「プロパティ」 - >「実行/デバッグ設定」を選択します。

右のパネルで関連ファイルを選択し、「編集」ボタンをクリックしてください。選択したファイルのプロパティが開きます。 「引数」タブがあります。

0

私が行うことは次のとおりです。

プロジェクトをデバッグパースペクティブで開きます。 コンソールでは、デバッガがブレークポイントでブレークするたびに、「コンソール」にpythonコマンドを入力してreturnキーを押すか入力します。 ">>"記号がないので、発見するのは難しいです。

しかし、日食は

1

年後:(Pythonシェルを持っていない、とEclipseない、 なく、shまたはIPythonでrun my.py M=11 N=None ...に他の答えのバリアントんなぜ私が疑問に思う:

import sys 

# parameters -- 
M = 10 
N = 20 
... 

# to change these params in sh or ipython, run this.py M=11 N=None ... 
for arg in sys.argv[1:]: 
    exec(arg) 
... 
myfunc(M, N ...) 

One-line-arg-parse-for-flexible-testing-in-python gist.github.com/denis-bzを参照してください。

関連する問題