diff --git a/Lib/optparse.py b/Lib/optparse.py --- a/Lib/optparse.py +++ b/Lib/optparse.py @@ -147,8 +147,9 @@ class AmbiguousOptionError (BadOptionErr self.possibilities = possibilities def __str__(self): - return (_("ambiguous option: %s (%s?)") - % (self.opt_str, ", ".join(self.possibilities))) + return (_("ambiguous option: %(option)s (%(possibilities)s?)") + % {"option": self.opt_str, + "possibilities": ", ".join(self.possibilities)}) class HelpFormatter: @@ -425,7 +426,8 @@ def check_builtin(option, opt, value): return cvt(value) except ValueError: raise OptionValueError( - _("option %s: invalid %s value: %r") % (opt, what, value)) + _("option %(option)s: invalid %(type)s value: %(value)r") + % {"option": opt, "type": what, "value": value}) def check_choice(option, opt, value): if value in option.choices: @@ -433,8 +435,8 @@ def check_choice(option, opt, value): else: choices = ", ".join(map(repr, option.choices)) raise OptionValueError( - _("option %s: invalid choice: %r (choose from %s)") - % (opt, value, choices)) + _("option %(option)s: invalid choice: %(value)r (choose from %(choices)s)") + % {"option": opt, "value": value, "choices": choices}) # Not supplying a default is different from a default of None, # so we need an explicit "not supplied" value.