Python list slicing is fundamental concept that let us easily access specific elements in a list. In this article, we’ll learn the syntax and how to use both positive and negative indexing for slicing with examples.
Example: Get the items from a list starting at position 1 and ending at position 4 (exclusive).
Python
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# Get elements from index 1 to 4 (excluded)
print(a[1:4])
Python List Slicing Syntax
list_name[start : end : step]
Parameters:
- start (optional): Index to begin the slice (inclusive). Defaults to 0 if omitted.
- end (optional): Index to end the slice (exclusive). Defaults to the length of list if omitted.
- step (optional): Step size, specifying the interval between elements. Defaults to 1 if omitted
List Slicing Examples
Let’s see how to use list slicing in Python with the examples below.
Get all the items from a list
To retrieve all items from a list, we can use slicing without specifying any parameters.
Python
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# Get all elements in the list
print(a[::])
print(a[:])
Output[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Explanation: Using [:] & [::] without specifying any start, end, or step returns all elements of the list.
Get all items before/after a specific position
To get all the items from a specific position to the end of the list, we can specify the start index and leave the end blank.
And to get all the items before a specific index, we can specify the end index while leaving start blank.
Python
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# Get elements starting from index 2
# to the end of the list
b = a[2:]
print(b)
# Get elements starting from index 0
# to index 3 (excluding 3th index)
c = a[:3]
print(c)
Output[3, 4, 5, 6, 7, 8, 9]
[1, 2, 3]
Get all items between two positions
To extract elements between two specific positions, specify both the start and end indices
Python
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# Get elements from index 1
# to index 4 (excluding index 4)
b = a[1:4]
print(b)
Get items at specified intervals
To extract elements at specific intervals, use the step parameter.
Python
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# Get every second element from the list
# starting from the beginning
b = a[::2]
print(b)
# Get every third element from the list
# starting from index 1 to 8(exclusive)
c = a[1:8:3]
print(c)
Output[1, 3, 5, 7, 9]
[2, 5, 8]
Out-of-bound slicing
In Python, list slicing allows out-of-bound indexing without raising errors. If we specify indices beyond the list length then it will simply return the available items.
Example: The slice a[7:15] starts at index 7 and attempts to reach index 15, but since the list ends at index 8, so it will return only the available elements (i.e. [8,9]).
Negative Indexing
Negative indexing is useful for accessing elements from the end of the list. The last element has an index of -1, the second last element -2, and so on.
Extract elements using negative indices
This example shows how to use negative numbers to access elements from the list starting from the end. Negative indexing makes it easy to get items without needing to know the exact length of the list.
Python
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# Get elements starting from index -2
# to end of list
b = a[-2:]
print(b)
# Get elements starting from index 0
# to index -3 (excluding 3th last index)
c = a[:-3]
print(c)
# Get elements from index -4
# to -1 (excluding index -1)
d = a[-4:-1]
print(d)
# Get every 2nd elements from index -8
# to -1 (excluding index -1)
e = a[-8:-1:2]
print(e)
Output[8, 9]
[1, 2, 3, 4, 5, 6]
[6, 7, 8]
[2, 4, 6, 8]
Reverse a list using slicing
In this example, we'll reverse the entire list using a slicing trick. By using a negative step value, we can move through the list in reverse order.
Python
a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# Get the entire list using negative step
b = a[::-1]
print(b)
Output[9, 8, 7, 6, 5, 4, 3, 2, 1]
Explanation: The negative step (-1) indicates that Python should traverse the list in reverse order, starting from the end. The slice a[::-1] starts from the end of the list and moves to the beginning which result in reversing list. It’s a quick and easy way to get the list in reverse without changing the original list.
Similar Reads
Python Lists In Python, a list is a built-in dynamic sized array (automatically grows and shrinks). We can store all types of items (including another list) in a list. A list may contain mixed type of items, this is possible because a list mainly stores references at contiguous locations and actual items maybe s
6 min read
Get a list as input from user in Python We often encounter a situation when we need to take a number/string as input from the user. In this article, we will see how to take a list as input from the user using Python.Get list as input Using split() MethodThe input() function can be combined with split() to accept multiple elements in a sin
3 min read
Create List of Numbers with Given Range - Python The task of creating a list of numbers within a given range involves generating a sequence of integers that starts from a specified starting point and ends just before a given endpoint. For example, if the range is from 0 to 10, the resulting list would contain the numbers 0, 1, 2, 3, 4, 5, 6, 7, 8
3 min read
Python - Add List Items Python lists are dynamic, which means we can add items to them anytime. In this guide, we'll look at some common ways to add single or multiple items to a list using built-in methods and operators with simple examples:Add a Single Item Using append()append() method adds one item to the end of the li
3 min read
How to add Elements to a List in Python In Python, lists are dynamic which means that they allow further adding elements unlike many other languages. In this article, we are going to explore different methods to add elements in a list. For example, let's add an element in the list using append() method:Pythona = [1, 2, 3] a.append(4) prin
2 min read
Python List Access
Python - Access List ItemWhether we are working with numbers, strings or other data types, lists provide a versatile way to organize and manipulate data. But how to access specific items in a list? This article will guide you through various methods of accessing list items in Python.Accessing List Items by IndexIn Python, l
3 min read
Accessing index and value in Python listWe are given a list, and our task is to access both the index and value of each element in the list using Python. For example, using enumerate(list) in a loop like for index, value in enumerate(list) allows us to access both the index and the value together.Using enumerate() enumerate() is preferred
2 min read
Accessing all elements at given list of indexes-PythonSometimes, you may have a list of data and a separate list of indexes and the goal is to extract only the elements at those specific positions. For example, given a list [10, 20, 30, 40, 50] and a list of indexes [1, 3, 4], you want to retrieve [20, 40, 50] the values at those index positions in the
2 min read
Python List SlicingPython list slicing is fundamental concept that let us easily access specific elements in a list. In this article, weâll learn the syntax and how to use both positive and negative indexing for slicing with examples.Example: Get the items from a list starting at position 1 and ending at position 4 (e
4 min read
List Iteration Operations
Iterate over a list in PythonPython provides several ways to iterate over list. The simplest and the most common way to iterate over a list is to use a for loop. This method allows us to access each element in the list directly.Example: Print all elements in the list one by one using for loop.Pythona = [1, 3, 5, 7, 9] # On each
3 min read
How to iterate through a nested List in Python?A nested list is a list that contains other lists. Working with nested lists can seem tricky at first but it becomes easy once we understand how to iterate through them. This is the easiest way to loop through a nested list. We can use a for loop to access each sublist in the main list, and then use
3 min read
Python | Iterate over multiple lists simultaneouslyIterating over single lists, refers to using for loops for iteration over a single element of a single list at a particular step whereas in iterating over multiple lists simultaneously, we refer using for loops for iteration over a single element of multiple lists at a particular step. Iterate over
4 min read
Iterate Over a List of Lists in PythonWe are given a list that contains multiple sublists, and our task is to iterate over each of these sublists and access their elements. For example, if we have a list like this: [[1, 2], [3, 4], [5, 6]], then we need to loop through each sublist and access elements like 1, 2, 3, and so on. Using Nest
2 min read
Python List Search Operations
How To Find the Length of a List in PythonThe length of a list refers to the number of elements in the list. There are several methods to determine the length of a list in Python. For example, consider a list l = [1, 2, 3, 4, 5], length of this list is 5 as it contains 5 elements in it. Let's explore different methods to find the length of
2 min read
Python | Find elements of a list by indicesGiven two lists with elements and indices, write a Python program to find elements of list 1 at indices present in list 2. Examples: Input : lst1 = [10, 20, 30, 40, 50] lst2 = [0, 2, 4] Output : [10, 30, 50] Explanation: Output elements at indices 0, 2 and 4 i.e 10, 30 and 50 respectively. Input : l
5 min read
Python program to find String in a ListSearching for a string in a list is a common operation in Python. Whether we're dealing with small lists or large datasets, knowing how to efficiently search for strings can save both time and effort. In this article, weâll explore several methods to find a string in a list, starting from the most e
3 min read
Python - Ways to find indices of value in listIn Python, it is common to locate the index of a particular value in a list. The built-in index() method can find the first occurrence of a value. However, there are scenarios where multiple occurrences of the value exist and we need to retrieve all the indices. Python offers various methods to achi
3 min read
Python | Find most frequent element in a listGiven a list, find the most frequent element in it. If multiple elements appear a maximum number of times, print any one of them using Python.ExampleMake a set of the list so that the duplicate elements are deleted. Then find the highest count of occurrences of each element in the set and thus, we f
2 min read
Python List Remove Operations
Python - Remove List ItemRemoving List Item can be achieved using several built-in methods that provide flexibility in how you remove list items. In this article, we'll explore the different ways to remove list items in Python.Removing Item by Value with remove()The remove() method allows us to remove the first occurrence o
3 min read
How to Remove Item from a List in PythonLists in Python have various built-in methods to remove items such as remove, pop, del and clear methods. Removing elements from a list can be done in various ways depending on whether we want to remove based on the value of the element or index.The simplest way to remove an element from a list by i
3 min read
Python | Remove given element from the listGiven a list, write a Python program to remove the given element (list may have duplicates) from the given list. There are multiple ways we can do this task in Python. Let's see some of the Pythonic ways to do this task. Example: Input: [1, 8, 4, 9, 2] Output: [1, 8, 4, 2] Explanation: The Element 9
7 min read
Ways to remove particular List element in PythonThere are times when we need to remove specific elements from a list, whether itâs filtering out unwanted data, deleting items by their value or index or cleaning up lists based on conditions. In this article, weâll explore different methods to remove elements from a list.Using List ComprehensionLis
2 min read
Remove Multiple Elements from List in PythonIn this article, we will explore various methods to remove multiple elements from a list in Python. The simplest way to do this is by using a loop. A simple for loop can also be used to remove multiple elements from a list.Pythona = [10, 20, 30, 40, 50, 60, 70] # Elements to remove remove = [20, 40,
2 min read
Python List Concatenation Operations
Python - Concatenate two lists element-wiseIn Python, concatenating two lists element-wise means merging their elements in pairs. This is useful when we need to combine data from two lists into one just like joining first names and last names to create full names. zip() function is one of the most efficient ways to combine two lists element-
3 min read
Merge Two Lists in PythonPython provides several approaches to merge two lists. In this article, we will explore different methods to merge lists with their use cases. The simplest way to merge two lists is by using the + operator. Let's take an example to merge two lists using + operator.Pythona = [1, 2, 3] b = [4, 5, 6] #
4 min read
Concatenate two list of lists Row-wise-PythonThe task of concatenate two lists of lists row-wise, meaning we merge corresponding sublists into a single sublist. For example, given a = [[4, 3], [1, 2]] and b = [[7, 5], [9, 6]], we pair elements at the same index: [4, 3] from a is combined with [7, 5] from b, resulting in [4, 3, 7, 5], and [1, 2
3 min read
Python program to concatenate every elements across listsGiven 2 lists, perform concatenations of all strings with each other across list. Input : test_list1 = ["gfg", "is", "best"], test_list2 = ["love", "CS"] Output : ['gfg love', 'gfg CS', 'is love', 'is CS', 'best love', 'best CS'] Explanation : All strings are coupled with one another. Input : test_l
4 min read
Concatenate all Elements of a List into a String - PythonWe are given a list of words and our task is to concatenate all the elements into a single string with spaces in between. For example, given the list: li = ['hello', 'geek', 'have', 'a', 'geeky', 'day'] after concatenation, the result will be: "hello geek have a geeky day".Using str.join()str.join()
2 min read
Concatenate All Records - PythonThe task of concatenating all records in Python involves combining elements from a list, typically strings, into a single unified string. The goal is to concatenate each individual element, ensuring that the result is a continuous string without spaces or delimiters, unless specified. For example, g
3 min read
Python - Merge list elementsMerging list elements is a common task in Python. Each method has its own strengths and the choice of method depends on the complexity of the task. This is the simplest and most straightforward method to merge elements. We can slice the list and use string concatenation to combine elements.Pythona =
2 min read
Python | Concatenate N consecutive elements in String listSometimes, while working with data, we can have a problem in which we need to perform the concatenation of N consecutive Strings in a list of Strings. This can have many applications across domains. Let's discuss certain ways in which this task can be performed. Method #1: Using format() + zip() + i
8 min read
Python | Merge two lists alternativelyGiven two lists, write a Python program to merge the given lists in an alternative fashion, provided that the two lists are of equal length. Examples: Input : lst1 = [1, 2, 3] lst2 = ['a', 'b', 'c'] Output : [1, 'a', 2, 'b', 3, 'c'] Input : lst1 = ['name', 'alice', 'bob'] lst2 = ['marks', 87, 56] Ou
4 min read
Python - Union of two or more ListsThe union of two or more lists combines all elements ensuring no duplicates if specified. In this article we will explore various methods to get a union of two lists.Using set.union (Most Efficient for Uniqueness)The union() method ensures that the resulting list contains unique elements. Here we co
2 min read