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 Raise an Exception

when I run this in the workspaces it works but won't let me complete the challenge, please advise

suggestinator.py
def suggest(product_idea):
    return product_idea + "inator"
try:
    product_idea = input( "please enter your suggestion:  ") 
    if len(product_idea) <= 3:
        raise ValueError(" your suggestion is too short ")
    else: 
        print(suggest(product_idea))
except ValueError as e:
    print(e)  

1 Answer

Steven Parker
Steven Parker
231,268 Points

There's a few issues here:

  • the instructions only ask you to raise the exception, you won't need try or except
  • all the testing must be done before the return
  • the error should occur only when the idea is less than 3 characters (not when it equals)
  • the instructions do not ask for anything to be printed
  • the passed argument is what should be tested, you won't need to input anything

Thanks a lot, it works :)