все Python 3argparseпонятие
argparse.RawTextHelpFormatter
форматтеры справки
Форматтер справки, сохраняющий пробелы и переносы во всём тексте: и в description, и в help каждого аргумента.
Синтаксис
argparse.ArgumentParser(formatter_class=argparse.RawTextHelpFormatter)
Перенос по ширине терминала для таких строк выключен целиком: длинная строка help уйдёт за край окна, поэтому разбивать её придётся самому через '\n'. Пустые строки подряд сворачиваются в одну только в description и epilog, а в help остаются как есть. Если переносы нужны только в общем описании, лучше RawDescriptionHelpFormatter — он оставит автоматический перенос для аргументов.
Примеры
import argparse
parser = argparse.ArgumentParser(prog='app', formatter_class=argparse.RawTextHelpFormatter)
parser.add_argument('--n', help='сколько\nраз')
lines = parser.format_help().splitlines()
print(lines[-2].strip()) # → --n N сколько
print(lines[-1].strip()) # → раз
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности