Преобразование аргумента командной строки в стандартный ввод в Python - PullRequest
1 голос
/ 18 августа 2011

Как можно преобразовать сценарий, принимающий аргумент командной строки, для получения аргумента через стандартный ввод данных пользователем?

В настоящее время у меня есть файл, и для его обработки мне нужно запустить python abc.py query тогда как я хотел бы, чтобы файл мог проходить через python abc.py, а затем в следующей строке он должен запросить ввод у пользователя через raw_input, а ответ должен быть передан в аргумент (т. е. 'query').

1 Ответ

2 голосов
/ 18 августа 2011

Невозможно сделать это без изменения самого abc.py.

Если вы можете изменить abc.py, тогда хороший способ - проверить его на наличие аргумента командной строки, а если его нет, попросить его ... что-то вроде этого:

if __name__ == '__main__':
    if len(sys.argv) > 1:
        file_to_process = sys.argv[1]
    else:
        file_to_process = raw_input("Enter file to process: ").strip()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...