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.

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

Make a new function named first_and_last_4. It'll accept a single iterable but, this time, it'll return the first four a

why this still showing not "didn't get the right value for first_and_last_4" I will be happy if anyone show my mistake

slices.py
def first_4(iterable):
    return iterable[:4]
def first_and_last_4(iterable):
    first=iterable[1:]
    last=iterable[-1:]
    result=first+last
    return result

1 Answer

Mohit Yadav
Mohit Yadav
8,292 Points

You did the first_4 function correctly and needed to put that as it is in the first_and_last_4

def first_4(iterable):
    return iterable[:4]
def first_and_last_4(iterable):
    first=iterable[:4]
    last=iterable[-4:]
    result=first+last
    return result

In the first_and_last_4 function, for the first 4 part you need to set STOP as index 4 so it will loop from beginning as default and end at index 4 and for the last 4 you need to set START as -4 so it will go one step from -4 ahead each time and end at the last value with default step of 1