Files
RustPython/tests/snippets/try_exceptions.py
2019-02-28 22:06:14 +01:00

98 lines
1.4 KiB
Python

try:
raise BaseException()
except BaseException as ex:
print(ex)
print(type(ex))
# print(ex.__traceback__)
# print(type(ex.__traceback__))
try:
raise ZeroDivisionError
except ZeroDivisionError as ex:
pass
class E(Exception):
def __init__(self):
asdf
try:
raise E
except NameError as ex:
pass
l = []
try:
l.append(1)
assert 0
l.append(2)
except:
l.append(3)
print('boom')
finally:
l.append(4)
print('kablam')
assert l == [1, 3, 4]
l = []
try:
l.append(1)
assert 0
l.append(2)
except AssertionError as ex:
l.append(3)
print('boom', type(ex))
finally:
l.append(4)
print('kablam')
assert l == [1, 3, 4]
l = []
try:
l.append(1)
assert 1
l.append(2)
except AssertionError as ex:
l.append(3)
print('boom', type(ex))
finally:
l.append(4)
print('kablam')
assert l == [1, 2, 4]
l = []
try:
try:
l.append(1)
assert 0
l.append(2)
finally:
l.append(3)
print('kablam')
except AssertionError as ex:
l.append(4)
print('boom', type(ex))
assert l == [1, 3, 4]
l = []
try:
l.append(1)
fubar
l.append(2)
except NameError as ex:
l.append(3)
print('boom', type(ex))
assert l == [1, 3]
l = []
try:
l.append(1)
raise 1
except TypeError as ex:
l.append(3)
print('boom', type(ex))
assert l == [1, 3]