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.

wayne ross
3,225 PointsNot sure why the reverse_evens() is graded wrong, all the test I do i get the output that the question ask for
reverse_evens should return the even indexes of the list in reverse order
def first_4(list1):
ret_value=list1[:4]
return(ret_value)
def first_and_last_4(input_var):
ret_value=input_var[:4]+input_var[-4:]
return(ret_value)
def odds(list2):
ret_value=list2[1::2]
return(ret_value)
def reverse_evens(list3):
rev_list=sorted(list3,reverse=True)
ret_value=rev_list[::2]
return(ret_value)
3 Answers

wayne ross
3,225 Pointsdef reverse_evens(var_4):
ret_val=var_4[::2]
ret_val.reverse()
return(ret_val)

cb123
Courses Plus Student 9,858 Pointsfor mine to work I had to do a length check. len(iterable)%2 == 0
based on the true or false I had slightly different evaluations for my slice syntax iterations. Hopefully that helps.

Steven Parker
221,322 PointsThere are two different approaches to this, one is to extract the even indexes first and then reverse the list (as done above), and the other is to calculate the starting point based on the size, as you did.

Steven Parker
221,322 PointsI can see that this code will work on the example, but it is dependiing on the list having an odd number of elements and being in sorted order.
It needs to also work on arrays of different sizes and regardless of sorting.
Try using this as a test sample:
With ["try", "this", "as", "a", "test", "sample"]
as the input, the function should return ["test, "as", "try"]
.

wayne ross
3,225 Pointsdef reverse_evens(var_4): ret_val=var_4[::2] sorted_ret_val=sorted(ret_val, reverse=True) return(sorted_ret_val)
Still didnt work, I thought about that after I sent the question so made some changes still not working

wayne ross
3,225 Pointsdef reverse_evens(var_4):
ret_val=var_4[::2]
sorted_ret_val=sorted(ret_val, reverse=True)
return(sorted_ret_val)

wayne ross
3,225 PointsHey thanks for your input I just saw how to find my previous post. I will try this and let you know

wayne ross
3,225 PointsHey Steven I just tried this and got out ['test','as','try']

wayne ross
3,225 PointsSteven now I remember what I did, I actually ended up using just slices. basically did a slice of the input [::2] then used the reverse slice option [::-1] for the list reversal

Steven Parker
221,322 PointsYes, that's the other method.
And normally, you'd choose "best answer" as the one that helped you the most, not on your own final result.
Steven Parker
221,322 PointsSteven Parker
221,322 PointsBut good job on finding a working solution!
FYI: this can also be solved using only slices.