From 18d61e7372bd469a287805b6b246975178664d3c Mon Sep 17 00:00:00 2001 From: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Date: Tue, 25 Jan 2022 16:42:22 +0530 Subject: [PATCH] bpo-46510: Remove old Python 2 exception handling from argparse --- Lib/argparse.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Lib/argparse.py b/Lib/argparse.py index 9344dab3e60d5a2..3c6aa3c991bfd93 100644 --- a/Lib/argparse.py +++ b/Lib/argparse.py @@ -1875,8 +1875,7 @@ def parse_known_args(self, args=None, namespace=None): if self.exit_on_error: try: namespace, args = self._parse_known_args(args, namespace) - except ArgumentError: - err = _sys.exc_info()[1] + except ArgumentError as err: self.error(str(err)) else: namespace, args = self._parse_known_args(args, namespace) @@ -2151,8 +2150,7 @@ def _read_args_from_files(self, arg_strings): arg_strings.append(arg) arg_strings = self._read_args_from_files(arg_strings) new_arg_strings.extend(arg_strings) - except OSError: - err = _sys.exc_info()[1] + except OSError as err: self.error(str(err)) # return the modified argument list @@ -2502,9 +2500,9 @@ def _get_value(self, action, arg_string): result = type_func(arg_string) # ArgumentTypeErrors indicate errors - except ArgumentTypeError: + except ArgumentTypeError as err: name = getattr(action.type, '__name__', repr(action.type)) - msg = str(_sys.exc_info()[1]) + msg = str(err) raise ArgumentError(action, msg) # TypeErrors or ValueErrors also indicate errors