try: print(5/0) break except: print("Sorry, something went wrong...") except (ValueError, ZeroDivisionError): print("Too bad...")
- The program will cause a ValueError exception and output a default error message.
- The program will raise an exception handled by the first except block.
- The program will cause a SyntaxError exception.
- The program will cause a ValueError exception and output the following message: Too bad…
- The program will cause a ZeroDivisionError exception and output the following message: Too bad…
- The program will cause a ZeroDivisionError exception and output a default error message.
Explanation: The program will raise a SyntaxError exception, because the break statement used in the try block violates Python’s grammar rules (the break instruction must be used in a loop). When the code is run, before it is executed, the Python interpreter first parses it and converts it to Python byte code. If the parser encounters a syntax error which has a fatal effect on the program, it won’t be able to parse the code successfully, and will raise a SyntaxError.
Remember that the parser analyzes the program before its execution, so if it encounters a syntax error, the program will not be executed. If your code has no syntax errors, the program is executed and may raise other types of exceptions.
More Questions: Python Essentials 1 (PE1) Course Final Test
Please login or Register to submit your answer