1# nested try's 2 3try: 4 print("try 1") 5 try: 6 print("try 2") 7 foo() 8 except: 9 print("except 2") 10 bar() 11except: 12 print("except 1") 13 14try: 15 print("try 1") 16 try: 17 print("try 2") 18 foo() 19 except TypeError: 20 print("except 2") 21 bar() 22except NameError: 23 print("except 1") 24 25# raised exception not contained in except tuple 26try: 27 try: 28 raise Exception 29 except (RuntimeError, SyntaxError): 30 print('except 2') 31except Exception: 32 print('except 1') 33 34# Check that exceptions across function boundaries work as expected 35def func1(): 36 try: 37 print("try func1") 38 func2() 39 except NameError: 40 print("except func1") 41 42def func2(): 43 try: 44 print("try func2") 45 foo() 46 except TypeError: 47 print("except func2") 48 49func1() 50