I have a list of items in Python and I need to get "all but the last N" items. It needs to work when N is zero (in which case I want the whole list) and when N is greater than or equal to the length of the list (in which case I want an empty list). This works in most cases:
mylist=[0,1,2,3,4,5,6,7,8,9] print( mylist[:-n] )
But it fails in the case where N is zero. mylist[:0]
returns an empty list: []
. Is there a Python slicing notation that will do what I want, or a simple function?
You can pass None
to the slice
print(mylist[:-n or None])
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With