Table of Contents
In this example, you will learn to split a list into evenly sized chunks in different ways.
To understand this example, you should have the knowledge of the following Python programming topics:
1. Example 1: Using yield
def split(list_a, chunk_size):
for i in range(0, len(list_a), chunk_size):
yield list_a[i:i + chunk_size]
chunk_size = 2
my_list = [1,2,3,4,5,6,7,8,9]
print(list(split(my_list, chunk_size)))
Output
[[1, 2], [3, 4], [5, 6], [7, 8], [9]]
In the above example, we have defined a function to split the list.
- Using a for loop and
range()method, iterate from 0 to the length of the list with the size of chunk as the step. - Return the chunks using
yield.list_a[i:i+chunk_size]gives each chunk. For example, wheni = 0, the items included in the chunk areitoi + chunk_sizewhich is 0 to(0 + 2)thindex. In the next iteration, the items included are 2 to2 + 2 = 4.
Learn more about yield at Python Generators.
You can do the same thing using list compression as below.
chunk_size = 2 list_chunked = [my_list[i:i + chunk_size] for i in range(0, len(my_list), chunk_size)] print(list_chunked)
Output
[[1, 2], [3, 4], [5, 6], [7, 8], [9]]
Learn more about list comprehension at Python List Comprehension.
2. Example 2: Using numpy
import numpy as np my_list = [1,2,3,4,5,6,7,8,9] print(np.array_split(my_list, 5))
Output
[array([1, 2]), array([3, 4]), array([5, 6]), array([7, 8]), array([9])]
array_split() is a numpy method that splits a list into equal sized chunks. Here, the size of the chunk is 5.
Note: You need to install numpy on your system.
Related posts:
Python Set issuperset()
Python List copy()
Python Program to Merge Mails
Building Chatbots with Python Using Natural Language Processing and Machine Learning - Sumit Raj
Python str()
Python Program to Find Numbers Divisible by Another Number
Python Program to Differentiate Between del, remove, and pop on a List
Machine Learning Mastery with Python - Understand your data, create accurate models and work project...
Python Program to Display Fibonacci Sequence Using Recursion
Python all()
Python for Programmers with introductory AI case studies - Paul Deitel & Harvey Deitel
Python Sets
How to Find an Element in a List with Java
Python Program to Count the Occurrence of an Item in a List
Python Machine Learning Third Edition - Sebastian Raschka & Vahid Mirjalili
Python List index()
Python Program to Extract Extension From the File Name
Python max()
Python Program to Check the File Size
Python Program to Concatenate Two Lists
Python Program to Find HCF or GCD
Python Program to Find Factorial of Number Using Recursion
Python String format()
Python Objects and Classes
Python set()
Python Dictionary
Python Program to Safely Create a Nested Directory
Python Program to Display Powers of 2 Using Anonymous Function
Python String islower()
Python Set discard()
Python ascii()
Python Program to Capitalize the First Character of a String