Search code examples
pythonoptparse

Python optparse metavar


I am not sure what optparse's metavar parameter is used for. I see it is used all around, but I can't see its use.

Can someone make it clear to me? Thanks.


Solution

  • As @Guillaume says, it's used for generating help. If you want to have an option that takes an argument, such as a filename, you can add the metavar parameter to the add_option call so your preferred argument name/descriptor is output in the help message. From the current module documentation:

    usage = "usage: %prog [options] arg1 arg2"
    parser = OptionParser(usage=usage)
    parser.add_option("-f", "--filename",
                      metavar="FILE", help="write output to FILE"),
    

    would produce help like this:

    usage: <yourscript> [options] arg1 arg2
    
    options:
      -f FILE, --filename=FILE
    

    The "FILE" after the "-f" and the "--filename" comes from the metavar.