Skip to content

Python list slice | Get specific sets of sub-elements Array

  • by

As you know Python List is a collection that is ordered and changeable. if you don’t know then you must read the first Python List tutorial. Python List Slicing is a way to get a range of items in a list.

Note: List are index from 0 to size-1, with a step of 1.


A syntax is where to start the slicing, where to end and specify the step.


Python list slice Examples

Let’s do multiple example of it.

1. Basic Example

Let’s do the basic example of list slicing.

L = ['a', 'b', 'c', 'd']

Output: [‘c’]

2. Slice with Negative Indices

Example of passing negative indices while slicing a list.

L = ['a', 'b', 'c', 'd']

Output: [‘a’, ‘b’]

3. Slice with Positive & Negative Indices

Using positive and negative indices at the same time in slice function.

L = ['a', 'b', 'c', 'd']

Output: [‘b’]

4. Specify Step of the Slicing

The step parameter is optional and by default 1 and its used for specify the step.

L = [1, 2, 3, 4, 5, 6, 7, 8, 9]

Output: [3, 5, 7, 9]

5. Slice List at Beginning & End in Python

Omitting the start index starts the slice from the index 0. Meaning, L[:stop] is equivalent to L[0:stop]

L = [1, 2, 3, 4, 5, 6, 7, 8, 9]

Output: [1, 2, 3]

Q: How do Python slice list by value?

Answer: Use bisect module as part of the standard library. See the below example for slice the list by value in python.

import bisect

lst = [1, 3, 5, 6, 8, 9, 11, 13, 17]
for val in range(19):
    pos = bisect.bisect_right(lst, val)
    print(val, '->', lst[max(0, pos - 3):pos])


Python list slice

Do comment if you have any suggestions and doubts on this tutorial.

IDE: PyCharm 2020.1.1 (Community Edition)
macOS 10.15.4
Python 3.7
All Python Examples are in Python 3, so Maybe its different from python 2 or upgraded versions.

Leave a Reply

Your email address will not be published. Required fields are marked *