Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Python Basics Functions and Looping Exception Flow

Enrica Fedeli-Jaques
Enrica Fedeli-Jaques
6,773 Points

Did not understand the test about expecting exeptions

print("A")
try:
    result = "test" + 5
    print("B")
except ValueError:
    print("C")
except TypeError:
    print("D")
else:
    print("E")
print("F")

OMG. I stared at this for 10 minutes, didn't figure it out. I was already confused by the first line, why is it there, I don't think it's of any impact on the exercise? anyway, moved on: try: analyses the code I know could throw an error, and the error is clear, string + number. The rest of the code I really didn't understand. Thank you in advance to whoever can explain this :)

1 Answer

Chris Freeman
MOD
Chris Freeman
Treehouse Moderator 68,457 Points

Here are the steps:

print("A")  #1 print A
try:  #2 enter try
    result = "test" + 5  #3 raise TypeError adding mixed types
    print("B")
except ValueError:
    print("C")
except TypeError:  #4 jump to TypeError
    print("D")  # print D
else:  # skip else due to error
    print("E")
print("F")  #5 print F

So, A, D, F