Мне нужно отредактировать программу Python 3, назовем ее ./foo
, которая использует argeparse
для анализа списка аргументов.
В настоящее время эта программа позволяет указать необязательный входной файл в командной строке. Если он не указан, то foo читает файл setting.txt
$ ./foo
$ ./foo --input my_settings.txt
Код, который делает это довольно просто:
parser.add_argument(
'--input',
default='settings.txt'
)
Намерение состояло в том, чтобы предоставить персонализированные настройки, но в На практике 99% людей, использующих аргумент --input
, указывают один конкретный файл other_settings.txt
. Я хотел бы добавить взаимоисключающий аргумент удобства, --common
, который эквивалентен --input other_settings.txt
# These are the same.
$ ./foo --input other_settings.txt
$ $ ./foo --common
Каков рекомендуемый способ выполнения sh этого? Например, следует ли записывать оба аргумента в одно и то же значение dest
? Могу ли я заставить их писать в отдельные места назначения, а затем добавить несколько logi c в тело кода, как это было сделано здесь ?