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 (2015) Logic in Python Try and Except

try except else

Challenge Task 3 of 3 You're doing great! Just one more task but it's a bigger one. Right now, we turn everything into a float. That's great so long as we're getting numbers or numbers as a string. We should handle cases where we get a non-number, though. Add a try block before where you turn your arguments into floats. Then add an except to catch the possible ValueError. Inside the except block, return None. If you're following the structure from the videos, add an else: for your final return of the added floats.

def add(a,b): Try: return float(a) + float(b) except ValueError: return None else: return float(a) + float(b)

this is not working. Even if I delete the else

trial.py
def add(a,b):
    Try:
        return float(a) + float(b)
    except ValueError:
        return None 
    else:
        return float(a) + float(b)
Wil Arter
Wil Arter
1,381 Points

Have you tried changing your 'Try' to 'try'

yes, I caught that but it still doesn't work

2 Answers

Ken Alger
STAFF
Ken Alger
Treehouse Teacher

John;

Are you using it as listed above with a capital "T" in the Try statement? It should be try, lowercase. And you don't need the else statement in there. But I was able to get your code to pass the challenge with it in place, just changing the case of the Try word.

Happy coding!

Ken Alger
Ken Alger
Treehouse Teacher

Doh! Some people are faster at typing. :-)

I did change the "t"

def add(a,b):     try:         return float(a) + float(b)     except ValueError:         return None     else:         return float(a) + float(b)

I know it doesn't need the "else" but the challenge says to add it if it is the video but with it or without it I keep getting "Bummer"

I think it is correct and you think it is correct, the challenge thinks it is wrong: is there a way to get past it ?