Docopt helps you create most beautiful command-line interfaces easily.

The option parser is generated based on a docstring that is passed to docopt
function. docopt parses the usage pattern ("Usage: ...") and option
descriptions (lines starting with dash "-") and ensures that the program
invocation matches the usage pattern; it parses options, arguments and commands
based on that. The basic idea is that a good help message has all necessary
information in it to make a parser.

Homepage:
http://docopt.org/
