2015-02-20 2 views
0

У меня есть проект ученого, который посвящен сценарию меню командной строки. Он ожидает, что каталог с большой текстовый файл, например, это то, как я выполняю программу:Как добавить новую функциональность в меню командной строки командной строки?

project/script.py /large_text_directory 

Итак, предположим, я добавляю новый подкаталог и .txt файл /data, скажем new_directory/list.txt:

Теперь я создаю эту новую функциональность:

Что было бы легко aproach добавить предыдущую функциональность в это меню командной строки.

Например, я хотел бы, чтобы запустить сценарий, как это:

python project/txt 

Я знаю, что это может быть трудно, но это мое первое погружение в argparse. Как я могу это объяснить? Заранее спасибо

+0

Вы прочитали документацию [argparse] (https://docs.python.org/2.7/library/argparse.html)? Добавление аргумента очень просто. – msvalkon

+0

Да, я читал его, но я не понимаю, как это сделать. Спасибо за отзывы @msvalkon –

ответ

2

Это будет хранить имя файла из командной строки до opts.sw.

p.add_argument("-sw", action="store", help="Enter a specific file to process") 

При использовании командной строки переключателя, после того, как opts = p.parse_args() содержимого opts.sw будет path/of/the/file_1.txt

После этого вы будете проходить это имя файла в функцию, которая делает вашу обработку текста.

+0

Итак, новая функциональность должна быть «завернута» в функцию? –

+1

Да, обычно вы хотите, чтобы ваш код был модульным. Это означает возможность разделения функций в функциях, классах и в конечном итоге на модули и пакеты. – msvalkon

Смежные вопросы