目次
- 1 1. Introduction
- 2 2. split() Function Basics (Beginner Friendly)
- 3 3. Advanced split() Usage (Intermediate)
- 4 4. Concrete Usage Examples (Practical Edition)
- 5 5. split() Function and Related Methods
- 6 6. Frequently Asked Questions (FAQ)
- 6.1 6-1. Why does split() include empty strings in the list?
- 6.2 6-2. What is the difference between split() and rsplit()?
- 6.3 6-3. How to use split() while removing whitespace?
- 6.4 6-4. Using multiple different delimiters with split()
- 6.5 6-5. When to use split() and when to use re.split()?
- 6.6 6-6. How to create a dictionary using the output of split()?
- 7 7. Summary
- 8 7-4. Resources for Further Learning
- 9 7-5. Summary and Next Steps
1. Introduction
Python when handling data processing and string manipulation, thesplit() function is frequently used. In this article, we will thoroughly explain the basics to advanced usage of Python’s split() function. The explanation includes code examples to make it easy for beginners to understand.What is Python’s split() function?
split() function is one of Python’s standard string methods that splits a string by a specified delimiter and returns a list. For example, you can split a string based on commas, spaces, and so on.text = "Python,Java,C++"
words = text.split(",")
print(words) # Output: ['Python', 'Java', 'C++']In this way, using split() converts a comma-separated string into a list.Why is the split() function important?
split() function is used in various situations such as the following.- Processing user input
- Parsing CSV data
- Splitting log files
- Handling strings with multiple values
split() is one of the most important functions when learning programming, make sure to understand it well.Ad
2. split() Function Basics (Beginner Friendly)
In this section, we explain the basic usage of Python’ssplit() function. It is presented with code examples to make it easy for beginners to understand.2-1. Basic Usage of split() Function basic syntax of the split() function is as follows.
string.split(separator, maxsplit)| Parameter Name | Description |
|---|---|
separator | character used as the split delimiter (defaults to space if omitted) |
maxsplit | maximum number of splits (splits all if omitted) |
Basic Usage
In the following example, a comma (,) is used as the separator for split().text = "Python,Java,C++"
words = text.split(",")
print(words) # Output: ['Python', 'Java', 'C++']When No Separator Is Specified
If you omit the argument tosplit(), it splits by default on whitespace characters (spaces, tabs, newlines).text = "Python Java C++"
print(text.split()) # Output: ['Python', 'Java', 'C++']It correctly handles multiple consecutive spaces by ignoring them.text = "Python Java C++"
print(text.split()) # Output: ['Python', 'Java', 'C++']2-2. Specifying maxsplit (Limiting Number of Splits)
By providing the second argumentmaxsplit to split(), you can limit the split to at most the specified number of times.text = "apple banana cherry date"
print(text.split(" ", 2)) # Output: ['apple', 'banana', 'cherry date']In this example, the string is split at most twice, and the remaining part of the string is stored as the last list element.When You Want to Remove Extra Trailing Spaces
By combining withstrip(), you can remove unnecessary leading and trailing spaces.text = " Python Java C++ "
print(text.strip().split()) # Output: ['Python', 'Java', 'C++']3. Advanced split() Usage (Intermediate)
From here, we will explain advanced usage of Python’ssplit() function. In addition to simple delimiter splitting, we will cover using multiple delimiters and leveraging rsplit().3-1. Splitting Based on a Specific String
In the basic usage so far, a single delimiter (e.g.,"," or " ") was specified. However, there are cases where the delimiter varies, or where newline or tab characters are used.Split by comma (,)
text = "apple,banana,grape"
print(text.split(",")) # Output: ['apple', 'banana', 'grape']**Newline (`
`)to split** Using a newline as the delimiter allows you to convert multiline text into a list.text = "apple
banana
grape"
print(text.split("
")) # Output: ['apple', 'banana', 'grape']Split by tab (\t)
It’s useful when processing tab-delimited data (such as TSV files).text = "apple banana grape"
print(text.split(" ")) # Output: ['apple', 'banana', 'grape']3-2. Splitting with Multiple Delimiters Using re.split()
The standard split() function can only specify a single delimiter. If you want using multiple different delimiters such as commas (,), semicolons (;), spaces, etc., you can use re.split().Specifying Multiple Delimiters
import re
text = "apple;banana,grape orange"
words = re.split(r"[;, ]+", text)
print(words) # Output: ['apple', 'banana', 'grape', 'orange']Key Pointsre.split(r"[;, ]+", text), ther"[;, ]+"uses a regular expression to on any of;,,, or spaces.</li- The
+combines consecutive delimiters into a single one, preventing the creation of extra empty elements.
3-3. Splitting from the Right with rsplit()
The regular split() splits from the left, but using rscode> splits from the right. This is especially useful for processing file paths or URLs.Example: Comparison of split() and rsplit()
text = "home/user/documents/file.txt"
print(text.split("/", 2)) # Output: ['home', 'user', 'documents/file.txt']
print(text.rsplit("/", 2)) # Output: ['home/user', 'documents', 'file.txt']split() splits twice from the left, storing the remainder in the last element. rsplit() splits twice from the right, storing the remainder in the first element. This is useful when retrieving directory hierarchies or extracting file names.Ad
4. Concrete Usage Examples (Practical Edition)
Here, we explain how to use thesplit() function in real-world programming with concrete examples. In particular, we introduce situations frequently used in practice such as CSV data processing, user input parsing, and log file analysis.4-1. Processing CSV Data
CSV (Comma-Separated Values) data is a data format where values are separated by commas (,). Using Python’s split(), you can simply process the data as a list.Split a single line of CSV data
csv_line = "2023-01-01,Tokyo,25"
data = csv_line.split(",")
print(data) # Output: ['2023-01-01', 'Tokyo', '25']This method is effective for processing small-scale CSV data, but for handling larger CSV files, it is common to use the csv module.A more appropriate method using csv.reader
import csv
csv_data = """2023-01-01,Tokyo,25
2023-01-02,Osaka,27
2023-01-03,Nagoya,26"""
lines = csv_data.split("n") # split by lines
reader = csv.reader(lines)
for> row in reader:
print(row) # Output: ['2023-01-01', 'Tokyo', '25'] etc.Key Pointssplit("n")to get each line- Using
csv.reader()enables proper handling of comma-separated values - When working with actual CSV files, it’s good to use
open()
4-2. Parsing User Input
Thesplit() function is handy when users process data entered from forms or the command line.Example: Convert user input to a list
user_input = "Alice | 30 | Developer"
data = user_input.split(" | ")
print(data) # Output: ['Alice', '30', 'Developer']Key Points- Using
" | "as the delimiter properly splits formatted input - Converting data to a list makes subsequent processing easier
Example: Space-separated input
user_input = input("Please enter name and age (e.g., Alice 30): ")
data = user_input.split()
print(f"Name: {data[0]}, Age: {data[1]}")Example OutputPlease enter name and age (e.g., Alice 30): Bob 25
Name: Bob, Age: 25Cautions- User input format needs to be standardized
- Using
try-exceptfor error handling is safer
4-3. Parsing Log Files
When analyzing server log files, you can usesplit() to extract IP addresses, dates, request information and so on.Analyzing Apache access logs
log_entry = "192.168.0.1 - - [10/Feb/2024:14:32:10 +0900] GET and 0.0.0.0 GET /index.html"
log_parts = log_entry.split(" ")
ip_address = log_parts[0]
timestamp = log_parts[3].strip("[]") # remove []
request_method = log_parts[5].strip('"') # remove " from "GET"
url = log_parts[6]
print(f"IP Address: {ip_address}")
print(f"Timestamp: {timestamp}")
print(f"Request Method: {request_method}")
print(f"URL: {url}")OutputIP Address: 192.168.0.1
Timestamp: 10/Feb/2024:14:32:10 +0900
Request Method: GET
URL: /index.htmlKey Points- Split by
" "(space) to obtain each element - Use
strip("[]")andstrip('"')to remove unwanted characters - Can be used for log data analysis, filtering, etc.

5. split() Function and Related Methods
Python’ssplit() function is a handy method for splitting strings, but there are other methods with similar functionality. It’s important to choose the appropriate method depending on the situation. Here we explain split() and the other methods it is often compared with (splitlines(), partition(), rsplit()).5-1. splitlines() (Split by Newlines)
Fundamentals of splitlines()
splitlines() is a method that splits a string based on newline characters. It is similar to the regular split("\n"), but it also handles different newline codes (such as "\r\n") as a distinctive feature.Example
text = "HellonWorldnPython"
print(text.splitlines()) # Output: ['Hello', 'World', 'Python']Difference from split(“n”)
text = "HellonWorldnPythonn"
print(text.split("n")) # Output: ['Hello', 'World', 'Python', '']
print(text.splitlines()) # Output: ['Hello', 'World', 'Python']split("\n") may include an empty string at the end of the list because it considers trailing newlines, whereas splitlines() ignores trailing newlines, making it convenient for data processing.5-2. partition() (Split into Three Parts at the First Delimiter)
partition() is a method that splits the string at the first occurrence of the delimiter and returns a tuple of three elements.Example
text = "Hello,World,Python"
print(text.partition(",")) # Output: ('Hello', ',', 'World,Python')Note that the output is a tuple ((head, separator, tail)).Difference from split()
| Method | Result |
|---|---|
split(",") | ['Hello', 'World', 'Python'] |
partition(",") | ('Hello', ',', 'World,Python') |
partition() is characterized by splitting only the first occurrence.Example Application: Extracting the Domain Part of a URL
url = "https://example.com/page"
protocol, separator, domain = url.partition("://")
print(protocol) # Output: https
print(domain) # Output: example.com/page- Using
split("://")returns a list, butpartition()splits into three elements, making it easy to retrieve a specific part.
5-3. rsplit() (Split from the Right)
The regularsplit() splits from the left, but rsplit() can split from the right. It’s useful for handling file names or extracting the lowest-level part of a domain.Example
text = "home/user/documents/file.txt"
print(text.rsplit("/", 1)) # Output: ['home/user/documents', 'file.txt']- If you use
split("/"), it splits at every slash, but rsplit("/", 1)splits only at the rightmost slash.
Difference from split()
text = "apple banana cherry date"
print(text.split(" ", 2)) # Split from left twice → ['apple', 'banana', 'cherry date']
print(text.rsplit(" ", 2)) # Split from right twice → ['apple banana', 'cherry', 'date']5-4. Comparison of split() and Related Methods
| Method | Description | Typical Use |
|---|---|---|
split() | Splits the entire string using the specified delimiter | General string splitting |
splitlines() | Splits at newline characters | Text file parsing |
partition() | Splits only the first occurrence into three parts | URL parsing, etc. |
rsplit() | Splits from the right a specified number of times | Path and filename handling |
Ad
6. Frequently Asked Questions (FAQ)
Python’ssplit() function often raises questions and common error-prone points. Here we introduce the problems frequently encountered in real coding and their solutions.6-1. Why does split() include empty strings in the list?
Problem
When you run the following code, the result ofsplit() may contain empty strings.text = "apple,,banana,grape"
print(text.split(",")) # Output: ['apple', '', 'banana', 'grape']Cause
- If there are consecutive commas (
,,), the element between them is treated as an empty string ('').
Solution
If you want to exclude empty elements, using a list comprehension is convenient.text = "apple,,banana,grape"
words = [word for word in text.split(",") if word]
print(words) # Output: ['apple', 'banana', 'grape']6-2. What is the difference between split() and rsplit()?
Comparison
| Method | Split direction | Purpose |
|---|---|---|
split() | Left split | General string splitting |
rsplit() | Right split | Processing paths and URLs |
Example code
text = "apple banana cherry date"
print(text.split(" ", 2)) # Split from the left twice → ['apple', 'banana', 'cherry date']
print(text.rsplit(" ", 2)) # Split from the right twice → ['apple banana', 'cherry', 'date']6-3. How to use split() while removing whitespace?
Solution
text = " apple banana grape "
words = [word.strip() for word in text.split()]
print(words) # Output: ['apple', 'banana', 'grape']6-4. Using multiple different delimiters with split()
Solution
import re
text = "apple;banana,grape orange"
words = re.split(r"[;, ]+", text)
print(words) # Output: ['apple', 'banana', 'grape', 'orange']6-5. When to use split() and when to use re.split()?
split() use cases
text = "apple,banana,grape"
print(text.split(",")) # ['apple', 'banana', 'grape']re.split() use cases
import re
text = "apple;banana,grape orange"
print(re.split(r"[;, ]+", text)) # ['apple', 'banana', 'grape', 'orange']6-6. How to create a dictionary using the output of split()?
Solution
text = "Name:Alice,Age:30,Occupation:Engineer"
pairs = text.split(",")
data_dict = {pair.split(":")[0]: pair.split(":")[1] for pair in pairs}
print(data_dict)Output
{'Name': 'Alice', 'Age': '30', 'Occupation': 'Engineer'}Ad
7. Summary
In this article, we explained the Pythonsplit() function in detail, covering everything from basics to advanced topics, practical examples, related methods, and FAQs. Finally, we review what we’ve learned and organize key points for getting the most out of split().7-1. Important Points of the split() Function
| Item | Description |
|---|---|
| Basic Syntax | string.split(separator, maxsplit) |
| Default Behavior | Split on spaces (whitespace) |
| Specific Separator | can be specified, such as "string".split(",") |
maxsplit Usage | Limit the number of splits (e.g., split(",", 2)) |
| Splitting from the Right | Using rsplit() splits from the right |
| Multiple Separators | can be handled with re.split(r"[;, ]+", text) |
| Split by Newlines | Using splitlines() is convenient |
| Split Only the First Occurrence | partition() gives a tuple ('head', 'separator', 'tail') |
7-2. Use Cases for split()
- Processing CSV data →
split(",") - Parsing user input →
split(" | ") - Analyzing log files →
split(" ") - Handling URLs and file paths →
rsplit("/", 1) - Generating dictionary data →
{key: value for key, value in (pair.split(":") for pair in text.split(","))}
7-3. Best Practices for Mastering split()
✅ Understand the default behavior and handle unnecessary whitespacetext = " apple banana grape "
print(text.split()) # ['apple', 'banana', 'grape']✅ Use list comprehensions to exclude empty elementswords = [word for word in text.split(",") if word]✅ When using multiple different separators, use re.split()import re
text = "apple;banana,grape orange"
print(re.split(r"[;, ]+", text)) # ['apple', 'banana', 'grape', 'orange']✅ If you want to limit the number of splits, use maxsplittext = "Alice Bob Charlie"
print(text.split(" ", 1)) # ['Alice', 'Bob Charlie']✅ Use rsplit() for log analysis and path handlingtext = "home/user/documents/file.txt"
print(text.rsplit("/", 1)) # ['home/user/documents', 'file.txt']✅ If you only need the first separator, use partition()text = "name:Alice,age:30,job:engineer"
key, sep, value = text.partition(":")
print(key, value) # name AliceAd
7-4. Resources for Further Learning
By using the official Python documentation and other learning resources, you can gain a deeper understanding.- Python Official Documentation:
split() - Qiita: How to Use Python
split() - Basics of String Manipulation in Python
Ad
7-5. Summary and Next Steps
Python’ssplit() function is one of the most frequently used methods when working with strings.
By understanding the basics and combining it with related methods, you can process data more efficiently. >✅ Learning Points So Farsplit()basic usage and behavior- Differences with
rsplit(),partition(), andsplitlines() - Advanced examples using
re.split() - Practical use cases (CSV processing, log analysis, user input)
join() (convert a list to a string) and replace() (string substitution) as well.
Be sure to master string manipulation in Python comprehensively! 📌 This completes the comprehensive guide on split()! Enjoy Python programming while leveraging split()! 🚀


