In this tutorial, we will look at how to split a string into a list of strings on the occurrences of a substring in Python with the help of examples.
How to split a string in Python?

You can use the Python string split()
function to split a string (by a delimiter) into a list of strings. To split a string by substring in Python, pass the substring as a delimiter to the split()
function.
The following is the syntax –
# split string s by a substring s.split(sub)
It returns a list of strings resulting from splitting the original string on the occurrences of the given substring.
Let’s look at some examples.
Highlighted programs for you
Flatiron School
Flatiron School
University of Maryland Global Campus
University of Maryland Global Campus
Creighton University
Creighton University
Split string by Substring
Here, we pass the substring, “…” as the delimiter to the string split()
function.
# string variable s = "You are...my fire...the one...desire" # split string by substring "..." ls = s.split("...") print(ls)
Output:
['You are', 'my fire', 'the one', 'desire']
The resulting list contains words resulting from the split of the original string on occurrences of the passed substring.
Fix the number of splits
You can also specify the maximum number of splits to be made using the maxsplit
parameter. By default, the string split()
function makes all the possible splits.
Let’s only split the above string into two parts at the occurrence of the substring “…” starting from the left. To split the string into two parts, the maxsplit
should be 1
, because we’re making only one split resulting in two strings.
# string variable s = "You are...my fire...the one...desire" # split string by substring "..." ls = s.split("...", maxsplit=1) print(ls)
Output:
['You are', 'my fire...the one...desire']
You can see that the resulting list has only two strings.
Let’s look at another example.
Let’s split the original string into three parts, here we pass maxsplit=2
.
# string variable s = "You are...my fire...the one...desire" # split string by substring "..." ls = s.split("...", maxsplit=2) print(ls)
Output:
['You are', 'my fire', 'the one...desire']
The resulting list has only three strings.
You might also be interested in –
- Python – Split String by Underscore
- Python – Remove Multiple Spaces From a String
- Remove Linebreaks From String in Python
Subscribe to our newsletter for more informative guides and tutorials.
We do not spam and you can opt out any time.