[docs] [issue14034] Add argparse howto

Nick Coghlan report at bugs.python.org
Mon Mar 19 14:05:43 CET 2012

Nick Coghlan <ncoghlan at gmail.com> added the comment:

Rather than "is recommended by at least one core CPython developer" I'd say "matches the way the CPython executable handles its own verbosity argument" (check the output of "python --help")

Also, a better fix for the non-orderable types problem is to use "default=0" when defining the verbosity arg rather than changing the test in the code.

Finally, the "not a superset" problem that I have with the way the running example uses its verbosity argument is that it uses it to *change* the message that gets displayed, instead of using it to *display more messages* at higher verbosity levels.

>From that point of view, more idiomatic usage might look something like:

    if verbosity >= 2:
        print("Running {!r}".format(self.__file__)
    if verbosity >= 1:
        print("Calculating {}^2".format(args.square)

However, I'll grant that things like test runners do use their verbosity argument to switch from shorthand progress markers to printing out the test names and results, so I can live with the examples as they are.


Python tracker <report at bugs.python.org>

More information about the docs mailing list