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) Number Game App Squared

Logan Valdez
PLUS
Logan Valdez
Courses Plus Student 6,741 Points

What do I do? (Number Game App challenge)

I am supposed to return the argument of squared and multiply it by it’s length if it cannot be converted into an integer, but I am receiving a SyntaxError for the last line of the program. What should I do to correct this error?

squared.py
# EXAMPLES
# squared(5) would return 25
# squared("2") would return 4
# squared("tim") would return "timtimtim"

def squared(a):
    try:
        if type(a) == int:
            return a ** 2
        else:
            return a * len(a)

1 Answer

Hi ! You have to use the try/except blocks (as you started it well), because you have to try if you can convert the parameter as an int, if not, the except block is executed

def squared(a):
    try:
            return int(a) ** 2
    except:
            return a * len(a)