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!
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
Nick Woody2,302 Points
Why doesn't this work?
Having trouble with this code challenge:
squared(5) would return 25
squared("2") would return 4
squared("tim") would return "timtimtim"
def squared(arg): try: int(arg) return arg * arg except ValueError: return arg * len(arg)
# EXAMPLES # squared(5) would return 25 # squared("2") would return 4 # squared("tim") would return "timtimtim" def squared(arg): try: int(arg) return arg * arg except ValueError: return arg * len(arg)
You are doing great!
But be careful: When you call
int(arg), it doesn't modify
arg's value, it returns a new value.
This means you should remove
int(arg), and replace this:
return arg * arg
return int(arg) * int(arg)
Or you could simply use the exponent operator for less typing:
return int(arg) ** 2
I hope this helps!
Happy coding! ~Alex