Как отключить представление справки OptionParser по умолчанию? - PullRequest
2 голосов
/ 10 ноября 2009

Я использую модуль OptionParser из optparse, чтобы проанализировать мою команду, полученную с помощью raw_input (). Когда я даю -h, он отображает экран справки и выходит из моего приложения. Я не хочу, чтобы он отображал экран справки или выходил из приложения. Как это можно сделать? Спасибо заранее.

Ответы [ 2 ]

8 голосов
/ 10 ноября 2009

У optparse есть странный перевод для выхода из вашей программы, что, на мой взгляд, действительно неудачно. Вы можете инициализировать это так, чтобы предотвратить это:

oparser = OptionParser(add_help_option=False, ...)

Обратите внимание, что теперь вы должны обрабатывать опции -h и --help самостоятельно. Вы можете распечатать сообщение справки, отформатированное OptionParser следующим образом:

print(oparser.format_help().strip())
7 голосов
/ 10 ноября 2009

установлено add_help_option в False

parser = optparse.OptionParser(add_help_option=False)
parser.add_option('-h', '--help', help='show this help message')
options, args = parser.parse_args()
if options.help:
   parser.print_help()

add_help_option (default: True)

Если true, optparse добавит параметр справки (с опцией строк "-h" и "--help") парсеру.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...