| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- try:
- for i in range(5):
- raise KeyError(i)
- exit(1)
- except KeyError:
- pass
- x = 0
- for i in range(5):
- try:
- for j in range(5):
- while True:
- raise KeyError(i)
- x += 3
- except KeyError:
- x += i
- assert x == 10
- class A:
- def __getitem__(self, i):
- raise KeyError(i)
- try:
- a = A()
- b = a[1]
- exit(1)
- except:
- pass
- try:
- a = {'1': 3, 4: None}
- x = a[1]
- exit(1)
- except:
- pass
- assert True
- def f():
- try:
- raise KeyError('foo')
- except A: # will fail to catch
- exit(1)
- except:
- pass
- assert True
- f()
- def f1():
- try:
- assert 1 + 2 == 3
- try:
- a = {1: 2, 3: 4}
- x = a[0]
- except A:
- exit(1)
- except B:
- exit(1)
- exit(1)
- try:
- f1()
- exit(1)
- except KeyError:
- pass
- assert True, "Msg"
- try:
- assert False, "Msg"
- exit(1)
- except AssertionError:
- pass
- def f(a: list):
- try:
- raise ValueError
- exit(1)
- except:
- pass
- a[0] = 1
- a = [0]
- f(a)
- assert a == [1]
|