Create List of Substrings from List of Strings in Python (original) (raw)
Last Updated : 23 Feb, 2024
In Python, when we work with lists of words or phrases, we often need to break them into smaller pieces, called substrings. A substring is a contiguous sequence of characters within a string. Creating a new list of substrings from a list of strings can be a common task in various applications. In this article, we will create a new list of substrings from a list of strings.
Create a New List of Substrings from the List of Strings
Below are some of the ways by which we can create a new list of substrings from the list of strings in Python:
Using List Comprehension
In this example, a list comprehension is employed to create a new list, `****substring_list**`, containing substrings extracted from each string in the `****original_list**`. The slicing notation `[s[1:4] for s in original_list]` extracts characters from index 1 to 3 (exclusive) from each string in the original list.
Python3 `
Original list of strings
original_list = ["apple", "banana", "orange"]
Using list comprehension to extract substrings
substring_list = [s[1:4] for s in original_list]
Displaying the result
print(substring_list)
`
Output
['ppl', 'ana', 'ran']
Using map() Function
In this example, a function `****extract_substring**` is defined to extract a substring from a given string `s`, and the `map()` function is used to apply this function to each element in the `****original_list**`. The result is a new list, `****substring_list**`, containing the extracted substrings, which is then printed.
Python `
Original list of strings
original_list = ["apple", "banana", "orange"]
Function to extract substring
def extract_substring(s): return s[1:4]
Applying the function using map()
substring_list = list(map(extract_substring, original_list))
Displaying the result
print(substring_list)
`
Output
['ppl', 'ana', 'ran']
Using Lambda Function with map() Function
In this example, a lambda function is applied using the `map()` function to extract substrings `[1:4]` from each string in the `****original_list**`. The result is a new list, `****substring_list**`, containing the extracted substrings, which is then printed.
Python `
Original list of strings
original_list = ["apple", "banana", "orange"]
Applying a lambda function using map() for substring extraction
substring_list = list(map(lambda s: s[1:4], original_list))
Displaying the result
print(substring_list) # Output: ['ppl', 'ana', 'ran']
`
Output
['ppl', 'ana', 'ran']
Using List Comprehension with Conditional Statements
In this example, a list comprehension with a conditional statement is employed to create a new list, `****substring_list**`. It extracts substrings `[1:4]` from strings in the `****original_list**` only if the length of the string is greater than or equal to 4; otherwise, the original string is retained. The resulting list is then printed.
Python `
Original list of strings
original_list = ["apple", "banana", "orange"]
Using list comprehension with conditional statements for substring extraction
substring_list = [s[1:4] if len(s) >= 4 else s for s in original_list]
Displaying the result
print(substring_list) # Output: ['ppl', 'ana', 'ran']
`
Output
['ppl', 'ana', 'ran']