Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 34k
Closed as duplicate of#142950
Labels
3.15new features, bugs and security fixesnew features, bugs and security fixesstdlibStandard Library Python modules in the Lib/ directoryStandard Library Python modules in the Lib/ directorytype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Description
Bug report
Bug description:
Since the merge of #141940, the following is broken:
importargparseparser=argparse.ArgumentParser() parser.add_argument( "--foo", type=int, default=1234, help="0x%(default)x", ) args=parser.parse_args()It will trigger:
Traceback (most recent call last): File "/Users/aprengere/Dev/cpython/Lib/argparse.py", line 1792, in _check_help formatter._expand_help(action) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^ File "/Users/aprengere/Dev/cpython/Lib/argparse.py", line 695, in _expand_help return help_string % params ~~~~~~~~~~~~^~~~~~~~ TypeError: %x format: an integer is required, not str The reason is that now the values are "colored" (thus converted to str) before doing the actual interpolation using help_string % values.
If the expected type is not string (integer in this example), then the --help will fail.
I will try to fix this using a different approach for #141940
CPython versions tested on:
CPython main branch
Operating systems tested on:
macOS
Metadata
Metadata
Assignees
Labels
3.15new features, bugs and security fixesnew features, bugs and security fixesstdlibStandard Library Python modules in the Lib/ directoryStandard Library Python modules in the Lib/ directorytype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Projects
Status
Doc issues