Собственное справочное сообщение с использованием optparse - PullRequest
3 голосов
/ 09 марта 2010

возможно сделать собственное сообщение помощи или прикрепить собственное событие в опции помощи, используя модуль optparse в Python?

Ответы [ 3 ]

4 голосов
/ 09 марта 2010

Конечно - просто используйте параметры конструктора OptionParser:

import optparse

help_text = """
Hi, this is a really long help message for %prog. 

It's a pretty ace thing. (C)2010 Stuff etc.
"""
parser = optparse.OptionParser(usage=help_text, version="%prog 1.0 beta")
(options, args) = parser.parse_args()
1 голос
/ 04 октября 2014

Для пользовательских справочных сообщений я игнорирую optparse в целом:

import os
import sys
from optparse import OptionParser

__version__ = '1.0'    

progname = os.path.basename(sys.argv[0])
usage = """\
usage: %s [options] URL

options:
  --pprint     (default)
  -h --help
  --version
""" % progname

if __name__ == "__main__":
    if len(sys.argv) < 2 or "-h" in sys.argv or "--help" in sys.argv:
        sys.exit(usage)
    if "--version" in sys.argv:
        sys.exit(progname + " " + __version__)

    parser = OptionParser()
    parser.add_option("--pprint", action='store_true', default=True)
    (options, args) = parser.parse_args()
    print(options, args)
1 голос
/ 09 марта 2010

Вы можете заменить механизм справки по умолчанию своим собственным, просто создав подкласс OptionParser и переопределив метод print_help().

...