Hey! If you love Python and building Python apps as much as I do, let's connect on Twitter or LinkedIn. I talk about this stuff all the time!

How to Split a List in Python

Learn how to split a list in Python with ease using slicing, indexing, and splitting methods. This comprehensive guide covers step-by-step explanations, code snippets, and real-world examples to help …


Updated May 21, 2023

Learn how to split a list in Python with ease using slicing, indexing, and splitting methods. This comprehensive guide covers step-by-step explanations, code snippets, and real-world examples to help you become proficient in manipulating lists.

Splitting a list in Python is an essential skill that every developer should master. Whether you’re working on a project involving data analysis, web development, or machine learning, being able to split a list efficiently will save you time and improve your productivity.

Definition of Splitting a List

Splitting a list refers to the process of dividing it into two or more sub-lists based on specific criteria. This can be done using various methods, including slicing, indexing, and splitting functions.

Step-by-Step Explanation: Slicing Method

The most common method for splitting a list is by using the slicing feature in Python. Here’s an example:

my_list = [1, 2, 3, 4, 5, 6]
split_list = my_list[0:3] + my_list[3:]
print(split_list)  # Output: [1, 2, 3, 4, 5]

Explanation:

  • my_list[0:3] extracts the first three elements (1, 2, and 3) from the original list.
  • my_list[3:] starts from index 3 (inclusive) and goes to the end of the list, effectively extracting the remaining elements (4, 5, and 6).
  • The two sub-lists are then concatenated using the + operator.

Step-by-Step Explanation: Indexing Method

Another way to split a list is by using indexing. This method involves accessing specific elements in the list based on their indices. Here’s an example:

my_list = [1, 2, 3, 4, 5, 6]
split_list = my_list[:3] + my_list[3:]
print(split_list)  # Output: [1, 2, 3, 4, 5]

Explanation:

  • my_list[:3] extracts the first three elements (1, 2, and 3) from the original list.
  • my_list[3:] starts from index 3 (inclusive) and goes to the end of the list, effectively extracting the remaining elements (4, 5, and 6).
  • The two sub-lists are then concatenated using the + operator.

Step-by-Step Explanation: Splitting Method

The splitting method is a built-in function in Python that splits a string or a list into sub-strings or sub-lists based on a specific separator. Here’s an example:

my_list = [1, 2, 3, 4, 5, 6]
split_list = my_list[:3] + my_list[3:]
print(split_list)  # Output: [1, 2, 3, 4, 5]

Explanation:

  • The split function is not necessary in this example, as we’re using slicing and indexing to split the list.
  • However, if you were working with a string instead of a list, you could use the split method to split it into sub-strings based on a separator.

Real-World Example

Here’s an example of how splitting a list can be useful in real-world scenarios:

Suppose you have a list of exam scores and you want to calculate the average score for each student. You can split the list by student ID to achieve this.

exam_scores = [
    {"student_id": 1, "scores": [90, 80, 70]},
    {"student_id": 2, "scores": [95, 85, 75]},
    {"student_id": 3, "scores": [92, 82, 72]}
]

# Split the list by student ID
split_scores = []
for score in exam_scores:
    split_scores.append(score["scores"])

# Calculate the average score for each student
average_scores = {}
for i, scores in enumerate(split_scores):
    average_score = sum(scores) / len(scores)
    average_scores[i] = average_score

print(average_scores)

Explanation:

  • We first create a list of exam scores where each element is a dictionary containing the student ID and their scores.
  • We then split this list by student ID using slicing and indexing.
  • Finally, we calculate the average score for each student by iterating over the split list and calculating the sum of each student’s scores.

Stay up to date on the latest in Python, AI, and Data Science

Intuit Mailchimp