Python Python Collections (2016, retired 2019) Slices Slice Functions

Sarah Burgart
Sarah Burgart
2,368 Points

how to find evens and then reverse the list - I couldn't figure out how to do a second change to the iterable

without creating a new variable - but that seems to have thrown more of a wrench into the situation - any advice / hints would be apprecaited.

thank you

slices.py
def first_4(iterable):
    return iterable[:4]

def first_and_last_4 (iterable):
   a = iterable[:4]
   b = iterable[-4:]
   c = (a+b)
   return c

def odds(iterable):
    return iterable[1::2]

reverse_evens(iterable):
    #this step creates a new list to hold the even indexed items
    evens_slice[] = iterable[::2]
    #this step reverses the list and returns it
    return evens_slice[::-1]

1 Answer

Jeff Muday
MOD
Jeff Muday
Treehouse Moderator 22,777 Points

You are so close! If you get rid of the square brackets on the left-hand side of the equal sign, it should work for you.

reverse_evens(iterable):
    #this step creates a new list to hold the even indexed items
    # evens_slice[] = iterable[::2]
    evens_slice = iterable[::2] # here is the change
    #this step reverses the list and returns it
    return evens_slice[::-1]
Sarah Burgart
Sarah Burgart
2,368 Points

thank you Jeff, I could've sworn that was the first thing I tried ... but it definitely worked this time!