Python Python Basics Functions and Looping Raise an Exception

Anthony Costanza
Anthony Costanza
2,123 Points

Raise an exception exercise

Really can't figure this out

suggestinator.py
def suggest(product_idea):
    if product_idea < 3:
        raise ValueError("More than 2 characters is required")
    return product_idea + "inator"

2 Answers

Peter Vann
MOD
Peter Vann
Treehouse Moderator 31,439 Points

Hi Anthony!

You are not quite addressing this issue in your example code:

raise a ValueError if the product_idea is less than 3 characters long

This:

if product_idea < 3:

treats product_idea as if it is an integer, but it's a string.

This passes:

def suggest(product_idea):
    if len(product_idea) < 3:
        raise ValueError("More than 2 characters is required")
    return product_idea + "inator"

notice the use of the len() function here:

if len(product_idea) < 3:

which tests to see if the length of the string product_idea is less than 3 characters

Usage

print(suggest('AI'))

would raise the error

print(suggest('Python'))

would print "Pythoninator"

More info:

https://www.w3schools.com/python/ref_func_len.asp

I hope that helps.

Stay. safe and happy coding!

ahmed suleman
ahmed suleman
1,663 Points

def suggest(product_idea): if len(product_idea) < 3 : raise ValueError("More than 2 characters is required") return product_idea + "inator" print(suggest("python"))