50 lines
838 B
Python
50 lines
838 B
Python
# nested try's
|
|
|
|
try:
|
|
print("try 1")
|
|
try:
|
|
print("try 2")
|
|
foo()
|
|
except:
|
|
print("except 2")
|
|
bar()
|
|
except:
|
|
print("except 1")
|
|
|
|
try:
|
|
print("try 1")
|
|
try:
|
|
print("try 2")
|
|
foo()
|
|
except TypeError:
|
|
print("except 2")
|
|
bar()
|
|
except NameError:
|
|
print("except 1")
|
|
|
|
# raised exception not contained in except tuple
|
|
try:
|
|
try:
|
|
raise Exception
|
|
except (RuntimeError, SyntaxError):
|
|
print('except 2')
|
|
except Exception:
|
|
print('except 1')
|
|
|
|
# Check that exceptions across function boundaries work as expected
|
|
def func1():
|
|
try:
|
|
print("try func1")
|
|
func2()
|
|
except NameError:
|
|
print("except func1")
|
|
|
|
def func2():
|
|
try:
|
|
print("try func2")
|
|
foo()
|
|
except TypeError:
|
|
print("except func2")
|
|
|
|
func1()
|