6.20.2.4 Generazione dell'help

L'ultima funzionalit� che utilizzerete in ogni script sar� quella che permette a optparse di generare messaggi di help. Tutto quello che dovrete fare sar� fornire un argomento help quando aggiungerete un'opzione. Creiamo un nuovo analizzatore, e popoliamolo includendovi delle opzioni (documentate) semplificative:

usage = "utilizzo: %prog [opzioni] arg1 arg2"
parser = OptionParser(usage=usage)
parser.add_option("-v", "--verbose",
                  action="store_true", dest="verbose", default=True,
                  help="fa un sacco di rumore [predefinito]")
parser.add_option("-q", "--quiet",
                  action="store_false", dest="verbose", 
                  help="� mooolto silenzioso (sono a caccia di conigli)")
parser.add_option("-f", "--file", dest="filename",
                  metavar="FILE", help="scrive l'output su FILE"),
parser.add_option("-m", "--mode",
                  default="intermediate",
                  help="modalit� interattiva: specificare tra 'principiante', "
                       "'intermedio' [predefinito], 'esperto'")

Se optparse incontra -h o --help sulla riga di comando, oppure se invocate parser.print_help(), stamper� sullo stdout quanto segue:

utilizzo: <vostroscript> [opzioni] arg1 arg2

opzioni:
  -h, --help           mostra questo messaggio ed esce
  -v, --verbose        fa un sacco di rumore [predefinito]
  -q, --quiet          � mooolto silenzioso (sono a caccia di conigli)
  -fFILE, --file=FILE  scrive l'output su FILE
  -mMODE, --mode=MODE  modalit� interattiva: specificare tra 'principiante',
                       'intermedio' [predefinito], 'esperto'

Ci sono molti argomenti per aiutare optparse a genereare il miglior messaggio d'aiuto possibile:

Quando si ha a che fare con molte opzioni, conviene raggrupparle per avere un migliore output di aiuto. Una classe OptionParser pu� contenere diversi gruppi di opzioni, ognuno dei quali pu� contenere diverse opzioni.

Continuando col parser definito sopra, � semplice aggiungere un OptionGroup:

group = OptionGroup(parser, "Opzioni Pericolose", "Attenzione:
		utilizza queste opzioni a tuo rischio e pericolo.  "
		"Alcune di queste sono note per creare dei danni.")
group.add_option("-g", action="store_true", help="Opzione di un gruppo.")
parser.add_option_group(group)

Il risultato dovrebbe essere l'output di aiuto seguente:

utilizzo: <vostroscript> [opzioni] arg1 arg2

opzioni:
  -h, --help           mostra questo messaggio ed esce
  -v, --verbose        fa un sacco di rumore [predefinito]
  -q, --quiet          � mooolto silenzioso (sono a caccia di conigli)
  -fFILE, --file=FILE  scrive l'output su FILE
  -mMODE, --mode=MODE  modalit� interattiva: specificare tra 'principiante',
                       'intermedio' [predefinito], 'esperto'

  Opzioni pericolose:
    Attenzione: utilizza quest opzioni a tuo rischio e
    pericolo. Alcune di queste sono note per creare dei danni. 
    -g                 Opzione di un gruppo.

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.