Подтвердить что ты не робот

Передача команды Аргумент строки Python script внутри Eclipse (Pydev)

Я новичок в Python и Eclipse и с некоторыми трудностями понимаю, как передать аргумент командной строки script в Eclipse (Pydev).

Следующая ссылка объясняет, как передать аргумент командной строки на python script.

Чтобы передать аргумент командной строки в модуль 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

Как передать те же аргументы в Python script внутри Eclipse (Pydev)???

Спасибо!

4b9b3361

Ответ 1

Если вы хотите, чтобы ваша программа запрашивала аргументы в интерактивном режиме, они перестают быть аргументами командной строки. Однако вы можете сделать что-то подобное (только для отладки!), Что позволит вам интерактивно вводить значения, которые программа увидит в качестве аргументов командной строки.

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

#Rest of the program here

Обратите внимание, что способ делать вещи Эндрю намного лучше. Кроме того, если вы используете python 3. *, он должен быть input вместо raw_input,

Ответ 2

Нажмите кнопку стрелки вниз на панели инструментов → выполнить конфигурации → (двойной щелчок) Python Run → вкладка "Аргументы" в правой части.

Оттуда вы можете заполнить текстовое поле "Аргументы программы":

введите описание изображения здесь

Ответ 3

Выберите "Свойства" → > "Запуск/Отладка".

Выберите соответствующий файл на правой панели, а затем нажмите кнопку "Изменить". Он откроет свойства выбранного файла. Там есть вкладка "Аргументы".

Ответ 4

Спустя годы, а не Eclipse, но вариант других ответов на run my.py M=11 N=None ... в sh или IPython:

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.

Ответ 5

Что я делаю:

Откройте проект в отладочной перспективе. В консоли, когда отладчик ломается в точке останова, вы можете ввести команду python в "console" и нажать return (или ввести). Символ " → " отсутствует, поэтому его трудно обнаружить.

Но мне интересно, почему в eclipse нет оболочки python: (