Splits the string at line breaks such as '\n'
and returns a split list of substrings (i.e., lines).
Minimal Example
>>> 'finxter\nis\ncool'.splitlines() ['finxter', 'is', 'cool']
As you read over the explanations below, feel free to watch our video guide about this particular string method:
Syntax and Explanation
str.splitlines([keepends])
Splits the string at line breaks such as '\n'
and returns a split list of substrings (i.e., lines).
You may ask: Why not using str.split('\n')
?
There are many different ways of indicating a newline, depending on the operating system and the encoding scheme. That’s the reason str.splitlines()
exists—it hides this complexity behind a simple and easy-to-understand interface.
Here’s an example of how useful it is:
>>> s = 'hello\nworld\rpython' >>> s.splitlines() ['hello', 'world', 'python'] >>> s.split('\n') ['hello', 'world\rpython']
In the second case, we don’t split at the carriage return symbol \r
which should also be considered a newline character.
These are some of the line boundaries that are used as delimiters according to the official docs:
Representation | Description |
---|---|
\n | Line Feed |
\r | Carriage Return |
\r\n | Carriage Return + Line Feed |
\v or \x0b | Line Tabulation |
\f or \x0c | Form Feed |
\x1c | File Separator |
\x1d | Group Separator |
\x1e | Record Separator |
\x85 | Next Line (C1 Control Code) |
\u2028 | Line Separator |
\u2029 | Paragraph Separator |
Note that line breaks are not included in the resulting list. You can change this by setting the argument keepends=True
:
>>> s = 'hello\nworld\r' >>> s.splitlines() ['hello', 'world'] >>> s.splitlines(keepends=True) ['hello\n', 'world\r']
Changelog
- Changed in Python version 3.2:
\v
and\f
added to list of line boundaries.
More String Methods
Python’s string class comes with a number of useful additional string methods. Here’s a short collection of all Python string methods—each link opens a short tutorial in a new tab.
Method | Description |
---|---|
capitalize() | Return a copy of the string with capitalized first character and lowercased remaining characters. |
casefold() | Return a lowercased, casefolded string similar to lowercase() but more aggressive. |
center() | Return a centered string of a certain length, padded with whitespace or custom characters. |
count() | Return the number of non-overlapping occurrences of a substring. |
encode() | Returns a byte object that is an encoded version of the string. |
endswith() | Returns whether the string ends with a given value or not (True or False ). |
expandtabs() | Return a string with spaces instead of tab characters. |
find() | Returns the index of the first occurrence of the specified substring. |
format() | Formats the string according to the Format Description Language. |
format_map() | Formats the string according to the Format Description Language, passing a mapping object. |
index() | Returns the index of the first occurrence of the specified substring, like find() but it raises a ValueError if the substring is not found. |
isalnum() | Checks whether all characters are alphabetic or numeric (True or False ). |
isalpha() | Checks whether all characters are alphabetic (True or False ). |
isascii() | Checks whether all characters are ASCII (True or False ). |
isdecimal() | Checks whether all characters are decimal numbers (True or False ). |
isdigit() | Checks whether all characters are digits, i.e., numbers from 0 to 9 (True or False ). |
isidentifier() | Checks whether all characters are identifiers that can be used as names of functions, classes, or variables (True or False ). |
islower() | Checks whether all characters are lowercase (True or False ). |
isnumeric() | Checks whether all characters are numeric values (True or False ). |
isprintable() | Checks whether all characters are printable (True or False ). |
isspace() | Checks whether all characters are whitespaces (True or False ). |
istitle() | Checks if the string is title-cased (True or False ). |
isupper() | Checks whether all characters are uppercase (True or False ). |
join() | Concatenates the elements in an iterable. |
ljust() | Returns a left-justified string filling up the right-hand side with fill characters. |
lower() | Returns a lowercase string version. |
lstrip() | Trims whitespaces on the left and returns a new string. |
maketrans() | Returns a translation table. |
partition() | Searches for a separator substring and returns a tuple with three strings: (1) everything before the separator, (2) the separator itself, and (3) everything after it. |
removeprefix() | Return string[len(prefix):] if the string starts with prefix , and string[:] otherwise. |
removesuffix() | Return string[:- if the string starts with suffix , and string[:] otherwise. |
replace() | Returns a string with replaced values. |
rfind() | Return the highest index in the string where a substring is found. Returns -1 if not found. |
rindex() | Return the highest index in the string where a substring is found. Returns ValueError if not found. |
rjust() | Returns a right-justified string filling up the left-hand side with fill characters. |
rpartition() | Searches for a separator substring and returns a tuple with three strings: (1) everything before the separator, (2) the separator itself, and (3) everything after it. |
rsplit() | Splits the string at a given separator and returns a split list of substrings. |
rstrip() | Trims whitespaces on the right and returns a new string. |
split() | Splits the string at a given separator and returns a split list of substrings. |
splitlines() | Splits the string at line breaks such as '\n' and returns a split list of substrings (i.e., lines). |
startswith() | Returns whether the string starts with a given value or not (True or False ). |
strip() | Trims whitespaces on the left and right and returns a new string. |
swapcase() | Swaps lowercase to uppercase characters and vice versa. |
title() | Returns a new string with uppercase first characters of each word. |
translate() | Returns a translated string. |
upper() | Returns a lowercase string version. |
zfill() | Fills the string from the left with "0" characters. |