henzef · GitHub

Feature or enhancement

Proposal:

import argparse
parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
parser.add_argument("-s", "--spam", help="Spam and eggs", type=str, required=True)
parser.add_argument("-i", help="How many iterations", type=int, default=5)
parser.parse_args()

which yields

options:
  -h, --help            show this help message and exit
  -s SPAM, --spam SPAM  Spam and eggs (default: None)
  -i I                  How many iterations (default: 5)

but since -s is a required argument, the "(default: None)" help text is a bit misleasing

My proposal is to simply omit adding the default for required arguments like this:

options:
  -h, --help            show this help message and exit
  -s SPAM, --spam SPAM  Spam and eggs
  -i I                  How many iterations (default: 5)

Has this already been discussed elsewhere?

This is a minor feature, which does not need previous discussion elsewhere

Links to previous discussion of this feature:

No response

Linked PRs

Read the original on github.com ↗