Fall 2026
  • Discord
  • Gradescope
  • Syllabus

On this page

  • Question 1
  • Question 2
  • Question 3
  • Question 4
  • Question 5
  • Question 6
  • Question 7
  • Question 8
  • Question 9
  • Question 10
  • Question 11
  • Question 12
  • Question 13
  • Question 14
  • Question 15
  • Question 16
  • Question 17
  • Question 18
  • Question 19
  • Question 20
  • Question 21
  • Question 22
  • Question 23
  • Question 24
  • Question 25
  • Question 26
  • Question 27
  • Question 28
  • Question 29
  • Question 30
  • Question 31
  • Question 32
  • Question 33
  • Question 34
  • Question 35
  • Question 36

Python Exceptions: Practice Questions

For each snippet, write the output, the exception type, or “Runs Forever.” If it prints nothing, write “No Output”.

Question 1

xs = []
total = 0
while xs:
    total += 1
print('total=', total)
Answer
total= 0

Question 2

xs = []
while len(xs)<5:
    xs.append('test')
print('len(xs)=',len(xs))
Answer
len(xs)= 5

Question 3

xs = [1, 2, 3]
total = 10
for x in xs:
    total %= x
print("total=",total)
Answer
total= 0

Question 4

s = 'hello world'
i = s.find(' ')
print("i=", i)
Answer
i= 5

Question 5

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
for k,v in sorted(grades.items()):
    print(v['hw1'])
Answer
99
82

Question 6

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
for k,v in sorted(grades.items()):
    print(k[0])
Answer
a
b

Question 7

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
total = 0
for i in grades:
    for j in i:
        total += 1
print('total=',total)
Answer
total= 8

Question 8

xs = []
while xs:
    total += 1
    assert(xs)
print('total=', total)
Answer
NameError

Question 9

xs = [1, 2, 3]
total = 0
while xs:
    total //= total
print('len(xs)=',len(xs))
Answer
ZeroDivisionError

Question 10

xs = [1, 2, 3]
try:
    result = xs[3]
except IndexError:
    result = -1
print('result=', result)
Answer
result= -1

Question 11

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
try:
    output = "grade=" + grades['charlie']['hw1']
except KeyError:
    output = 'oops'
print('output=', output)
Answer
output= oops

Question 12

def foo(xs):
    assert(len(xs) > 0)
foo()
Answer
TypeError

Question 13

def foo(xs):
    assert(len(xs) > 0)

try:
    foo([1,2,3])
except AssertionError:
    pass
Answer
No Output

Question 14

def bar(xs):
    if not len(xs) > 0:
        raise ValueError('input list must be non-empty')
    return len(xs)*2

result = 0
try:
    result += bar([1,2,3])
    result += bar([2,3])
    result += bar()
    result += bar([5])
except AssertionError:
    result += 1
except TypeError:
    result += 5

print('result=', result)
Answer
result= 15

Question 15

def bar(xs):
    if not len(xs) > 0:
        raise ValueError('input list must be non-empty')
    return len(xs)*2

result = 0
try:
    result += bar([1,2,3])
    result += bar([2,3])
    result += bar()
    result += bar([5])
except ValueError:
    result += 1
except TypeError:
    result += 5

print('result=', result)
Answer
result= 15

Question 16

def bar(xs):
    assert(len(xs) > 0)
    return len(xs)*2

result = 0
try:
    result += bar([1,2,3])
    result += bar([2,3])
    result += bar([])
    result += bar([5])
except AssertionError:
    pass

print('result=', result)
Answer
result= 10

Question 17

def bar(xs):
    assert(len(xs) > 0)
    return len(xs)*2

result = 0
try:
    result += bar([1,2,3])
    result += bar([2,3])
    result += bar()
    result += bar([5])
except AssertionError:
    result += 1
except TypeError:
    result += 5

print('result=', result)
Answer
result= 15

Question 18

xs = []
while len(xs)<5:
    xs.append('test')
assert(xs)
print('len(xs)=',len(xs))
Answer
len(xs)= 5

Question 19

xs = [1, 2, 3]
while xs:
    xs.append('test')
    assert('t' in xs)
print('len(xs)=',len(xs))
Answer
AssertionError

Question 20

xs = [1, 2, 3]
try:
    result = xs[3]
except:
    result = -1
print('result=', result)
Answer
result= -1

Question 21

xs = [1, 2, 3]
try:
    result = xs[3]
except NameError:
    result = -1
print('result=', result)
Answer
IndexError

Question 22

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
try:
    output = "grade=" + grades['charlie']['hw1']
except IndexError:
    output = 'oops'
print('output=', output)
Answer
KeyError

Question 23

def foo(xs):
    assert(len(xs) > 0)

result = 0
try:
    result += foo([1,2,3])
except AssertionError:
    result -= 1
print('result=', result)
Answer
TypeError

Question 24

def foo(xs):
    assert(len(xs) > 0)

example = 0
try:
    example += foo([1,2,3])
    example += 1
except ValueError:
    pass
print('example=', example)
Answer
TypeError

Question 25

def foo(xs):
    assert(len(xs) > 0)

example = 0
try:
    example += foo([1,2,3])
    example += 1
except AssertionError:
    pass
print('example=', example)
Answer
TypeError

Question 26

def bar(xs):
    assert(len(xs) > 0)
    return len(xs)*2

result = 0
try:
    result += bar([1,2,3])
    result += bar([2,3])
    result += bar([])
    result += bar([5])
except ValueError:
    pass

print('result=', result)
Answer
AssertionError

Question 27

xs = [0, 1, 2]
xs.replace(1, 2)
print("xs=", xs)
Answer
AttributeError

Question 28

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
for k,v in sorted(grades.items()):
    print(k['hw1'])
Answer
TypeError

Question 29

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
for k,v in sorted(grades.items()):
    print(v[0])
Answer
KeyError

Question 30

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
output = "grade=" + grades['alice']['hw1']
print('output=', output)
Answer
TypeError

Question 31

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
output = "grade=" + grades['charlie']['hw1']
print('output=', output)
Answer
KeyError

Question 32

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
output = "grade=" + grades['bob']['hw2'][91]
print('output=', output)
Answer
TypeError

Question 33

grades={
    'alice':{'hw1':99,'hw2':88},
    'bob':{'hw1':82,'hw2':91},
}
output = alice['hw1']
print('output=', output)
Answer
NameError

Question 34

def bar(xs):
    if not len(xs) > 0:
        raise ValueError('input list must be non-empty')
    return len(xs)*2

result = 0
result += bar

print('result=', result)
Answer
TypeError

Question 35

xs = [1, 2, 3]
while xs:
    xs.append('test')
print('len(xs)=',len(xs))
Answer
runs forever

Question 36

xs = [1, 2, 3]
while xs:
    xs += 'test'
print('len(xs)=',len(xs))
Answer
runs forever