Welcome to the Treehouse Community
The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Didier Borel
2,837 Pointsreturn an index value
can someone tell me what I am doing wrong. thxs
# EXAMPLE
# random_item("Treehouse")
# The randomly selected number is 4.
# The return value would be "h"
import random
def random_item(argument):
random.randint(0,len(argument))-1
return index (random_item(argument))
1 Answer

Alexander Davison
65,456 PointsGreat job! There are many errors, though.
These ar all the errors I can count:
- The random.randint's first argument should be 1, not 0.
- There is no such function called "index", you get indexes like this:
# Get the first index
some_list[0]
- Assign the index to a variable so that you can use it later
- Don't call the random_item function inside the random_item function, or it will be recursive
You should end up like this:
# EXAMPLE
# random_item("Treehouse")
# The randomly selected number is 4.
# The return value would be "h"
import random
def random_item(my_list):
random_index = random.randint(1, len(my_list)) - 1
return my_list[random_index]
Hope that helps!