Is there a better/smoother way of doing this ? Thanks
#Write your function here
from statistics import mean
if len(lst) % 2 == 0:
#Uncomment the line below when your function is done
print(middle_element([5, 2, -10, -4, 4, 5]))
Ah, I thought this was about the middle item, not a way to extract a sub-sequence.
We’re given two numeric parameters which are both indices meaning we can, as you have, use the slice method to virtualize it.
lst[start:end + 1]
describes the segment we wish to remove. If we want to keep it, we can assign it to a new variable. It could also be used in a transient expression (one-off then it is gone). Either way, we get rid of the slice by setting it to an empty list.
lst[start:end + 1] = 
This is a totally different operation than the one envisioned above.
Above I use the term virtualize. Slices do not raise an IndexError when given garbage.