diff --git a/Lib/argparse.py b/Lib/argparse.py index 456ec8bb7fc..e590225c8eb 100644 --- a/Lib/argparse.py +++ b/Lib/argparse.py @@ -1214,8 +1214,9 @@ class FileType(object): return open(string, self._mode, self._bufsize, self._encoding, self._errors) except OSError as e: - message = _("can't open '%s': %s") - raise ArgumentTypeError(message % (string, e)) + args = {'filename': string, 'error': e} + message = _("can't open '%(filename)s': %(error)s") + raise ArgumentTypeError(message % args) def __repr__(self): args = self._mode, self._bufsize diff --git a/Misc/NEWS.d/next/Library/2019-08-07-14-49-22.bpo-37785.y7OlT8.rst b/Misc/NEWS.d/next/Library/2019-08-07-14-49-22.bpo-37785.y7OlT8.rst new file mode 100644 index 00000000000..2d3aa4f9a75 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2019-08-07-14-49-22.bpo-37785.y7OlT8.rst @@ -0,0 +1 @@ +Fix xgettext warnings in :mod:`argparse`.