In Python (2 and 3). Whenever we use list slicing it returns a new object, e.g.:
l1 = [1,2,3,4] print(id(l1)) l2 = l1[:] print(id(l2))
Output>
Not sure about this but it seems that Python provides you with a new pointer to the same object to avoid copying since the tuples are identical (and since the object is a tuple, it's immutable).