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 arei
toi + chunk_size
which is 0 to(0 + 2)th
index. 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 symmetric_difference()
Python abs()
Python String isalpha()
Python callable()
Statistical Methods for Machine Learning - Disconver how to Transform data into Knowledge with Pytho...
Python Program to Swap Two Variables
Python Exception Handling Using try, except and finally statement
Python id()
Python globals()
Python Set difference()
Python Dictionary items()
Python Program to Check Whether a String is Palindrome or Not
Python Set intersection_update()
Python Dictionary values()
Python pow()
Convert a Map to an Array, List or Set in Java
Python property()
Python Program to Find Armstrong Number in an Interval
Python sum()
Python Program to Find Sum of Natural Numbers Using Recursion
Python Dictionary pop()
Python String split()
How to Get Started With Python?
Python Inheritance
Python Set symmetric_difference_update()
Python Machine Learning Eqution Reference - Sebastian Raschka
Python String lower()
Python String rstrip()
Join and Split Arrays and Collections in Java
Python Set union()
Python Dictionary setdefault()
Learning scikit-learn Machine Learning in Python - Raul Garreta & Guillermo Moncecchi