Python | Append String to list (original) (raw)
Last Updated : 27 Sep, 2024
Sometimes, while working with data, we can have a problem in which we need to add elements to a container. The list can contain any type of data type. Let’s discuss certain ways in Python in which we can perform string append operations in the list of integers.
**Example: Append String at the end of a list
Python `
lis = [2, 'geeks', 'CS']
lis.append("GeeksforGeeks") print(lis)
`
Output
[2, 'geeks', 'CS', 'GeeksforGeeks']
Table of Content
- Using Concatenation
- Using insert() Function
- Using extend() Function
- Using itertools.chain()
- Using the map() and join() Method
- Using reduce() Method
Below are the methods that we will cover in this article:
Append String to a List using Concatenation
In this method, we first convert the string into a list and then perform the task of append using the + operator in Python.
Python `
initialize list
test_list = [1, 3, 4, 5]
initialize string
test_str = 'gfg'
using + operator + list conversion
test_list += [test_str]
printing result
print("The list after appending is : " + str(test_list))
`
Output
The list after appending is : [1, 3, 4, 5, 'gfg']
**Time Complexity: O(1)
**Auxiliary Space: O(1)
**Add Elements to a List in Python using insert() Function
This function is used to insert and add the element at the last of the list by using the length of the list as the index number. By finding the index value where we want to append the string we can append using the index function to append the string into the list
Python `
initialize list
test_list = [1, 3, 4, 5]
initialize string
test_str = 'gfg'
Index for insert method
index = len(test_list)
Appending String to list
using insert()
test_list.insert(index, test_str)
printing result
print("The list after appending is : " + str(test_list))
`
Output
The list after appending is : [1, 3, 4, 5, 'gfg']
**Time Complexity: O(1)
**Auxiliary Space: O(1)
**Append String to List using extend() Function
This method can be used to solve this problem, extend function is used to merge the one list to the end of the second list. We add a string to the end of the list by using extend function into the list at the end and print the result
Python `
initialize list
test_list = [1, 3, 4, 5]
initialize string
test_str = 'gfg'
using extend()
test_list.extend([test_str])
printing result
print("The list after appending is : " + str(test_list))
`
Output
The list after appending is : [1, 3, 4, 5, 'gfg']
**Time Complexity: O(1)
**Auxiliary Space: O(1)
In this method, we can use itertools.chain() function to concatenate the given list and string element. Here with the help of itertool.chain string into the list at the end and then print the result
Python `
import itertools
initialize list
test_list = [1, 3, 4, 5]
initialize string
test_str = 'gfg'
using itertools.chain()
test_list = list(itertools.chain(test_list, [test_str]))
printing result
print("The list after appending is : " + str(test_list))
`
Output
The list after appending is : [1, 3, 4, 5, 'gfg']
**Time Complexity: O(1)
**Space Complexity: O(n)
**Python Append to String using the map() and join() Method
Python has a map(str, test_str), str() is a built-in function that converts any value to a string. In this case, it is used to convert each character of the test_str to a single string. The map() function applies each element of the iterable object passed to it. Since we want to append the test_str to the list, we need to join the individual strings created by map() into a single string. So, “”.join(map(str, test_str)) creates a single string by joining the individual strings
Python `
initialize list
test_list = [1, 3, 4, 5]
initialize string
test_str = "gfg"
append string to list using map() function
test_list += ["".join(map(str, test_str))]
print the updated list
print("The list after appending is : " + str(test_list))
`
Output
The list after appending is : [1, 3, 4, 5, 'gfg']
**Time Complexity: O(n) as we are iterating to each element, where n is the size of the list
**Space Complexity: O(n) as we use the map function which takes O(n) space.
**Python Append to String using reduce() Method
Import the reduce function from the functools module then initialize a list test_list and a string test_str. Define a lambda function concatenate that takes two arguments x and y. Inside the lambda function, join the list y into a string and concatenate it to the list x. Use the reduce function to apply the concatenate lambda function to test_list and test_str and store the result in the variable result_list now print the updated list.
Python `
from functools import reduce
test_list = [1, 3, 4, 5]
test_str = "gfg"
Define a lambda function to concatenate the string to the list
concatenate = lambda x, y: x + ["".join(map(str, y))]
Append the string to the list using reduce() function
result_list = reduce(concatenate, [test_list, test_str])
print("The list after appending is : " + str(result_list))
`
Output
The list after appending is : [1, 3, 4, 5, 'gfg']
**Time Complexity: O(n) as we are iterating to each element, where N is the size of the list
**Space Complexity: O(n)