Добавить в корзинуПозвонить
Найти в Дзене
Old Programmer

Язык программирования Python. Модуль argparse и парсинг командной строки

Снова на моем канале Old Programmer. Тематическое оглавление его найдете здесь . А здесь все мои материалы о языке программирования Python. Сегодня рассматриваем модуль argparse, который позволяет автоматизировать работу с параметрами командной строки программы. Я, правда, всегда использую sys.argv и не вижу проблем с анализом на основе такого массива. Но и есть и argparse и желательно с этим познакомиться. Модуль argparse языка Python Давайте рассмотрим, как это работает. Начнем, с так называемых позиционных параметров. Смотрим программу arg4000.py. В программе обрабатываются два параметра в порядке их поступления и в порядке их определения в программе. Запускаем ./arg4000.py параметр1 параметр2 Вывод
параметр1
параметр2 Отсутствие одного из параметров, приводит к сообщению usage: arg4000.py [-h] i o
arg4000.py: error: the following arguments are required: o При этом автоматически обрабатываются параметры помощи: -h и --help. Они встроенные. ./arg4000.py -h Результат usage:

Снова на моем канале Old Programmer. Тематическое оглавление его найдете здесь . А здесь все мои материалы о языке программирования Python.

  • Список разделов канала Old Programmer, канала о программировании и программистах

Сегодня рассматриваем модуль argparse, который позволяет автоматизировать работу с параметрами командной строки программы. Я, правда, всегда использую sys.argv и не вижу проблем с анализом на основе такого массива. Но и есть и argparse и желательно с этим познакомиться.

Модуль argparse языка Python

Давайте рассмотрим, как это работает. Начнем, с так называемых позиционных параметров. Смотрим программу arg4000.py. В программе обрабатываются два параметра в порядке их поступления и в порядке их определения в программе. Запускаем

./arg4000.py параметр1 параметр2

Вывод
параметр1
параметр2

Отсутствие одного из параметров, приводит к сообщению

usage: arg4000.py [-h] i o
arg4000.py: error: the following arguments are required: o

При этом автоматически обрабатываются параметры помощи: -h и --help. Они встроенные.

./arg4000.py -h

Результат

usage: arg4000.py [-h] i o

Обработка параметров командной строки

positional arguments:

i Входной файл
o Выходной файл

optional arguments:
-h, --help show this help message and exit

Модуль позволяет добавлять и не обязательные параметры, которые можно назвать именованными (см. программу arg4001.py).

Запуск
./arg4001.py --my_par=34 --my_par2=Петров

Результат
34
Петров

Наконец в программе arg40002.py есть и позиционные параметры и именованные. Запуск
./arg4002.py /gff /dfgd --my=55

Результат

55
/gff
/dfgd

Подписываемся на мой канал Old Programmer. До скорых встреч.

Программа arg4002.py
Программа arg4002.py