combined--one that handles exceptionsand one that executes finalization code regardless of whether exceptions occur or not python' raise and assert statements trigger exceptions on demand--both built-ins and new exceptions we define with classes--and the with/as statement is an alternative way to ensure that termination actions are carried out for objects that support it in the rest of this part of the bookwe'll fill in some of the details about the statements involvedexamine the other sorts of clauses that can appear under tryand discuss class-based exception objects the next begins our tour by taking closer look at the statements we introduced here before you turn the pagethoughhere are few quiz questions to review test your knowledgequiz name three things that exception processing is good for what happens to an exception if you don' do anything special to handle it how can your script recover from an exception name two ways to trigger exceptions in your script name two ways to specify actions to be run at termination timewhether an exception occurs or not test your knowledgeanswers exception processing is useful for error handlingtermination actionsand event notification it can also simplify the handling of special cases and can be used to implement alternative control flows as sort of structured "go tooperation in generalexception processing also cuts down on the amount of error-checking code your program may require--because all errors filter up to handlersyou may not need to test the outcome of every operation any uncaught exception eventually filters up to the default exception handler python provides at the top of your program this handler prints the familiar error message and shuts down your program if you don' want the default message and shutdownyou can code try/except statements to catch and recover from exceptions that are raised within its nested code block once an exception is caughtthe exception is terminated and your program continues after the try the raise and assert statements can be used to trigger an exceptionexactly as if it had been raised by python itself in principleyou can also raise an exception by making programming mistakebut that' not usually an explicit goal exception basics