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.
Input: [1,2,3,4]
Output: [1,2,3,4, 'geeksforgeeks']
Explanation: Here we appended the String 'geeksforgeeks' in the list of numbers.
Add String to a List in Python
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.
Python3
test_list = [ 1 , 3 , 4 , 5 ]
test_str = 'gfg'
print ( "The original list : " + str (test_list))
print ( "The original string : " + str (test_str))
test_list + = [test_str]
print ( "The list after appending is : " + str (test_list))
|
Output
The original list : [1, 3, 4, 5]
The original string : gfg
The list after appending is : [1, 3, 4, 5, 'gfg']
Time Complexity: O(1)
Auxiliary Space: O(1)
Append String at the end of a list
This particular append() function can be used to perform the operation of appending a string element to the end of a list without changing the state of the string to a list of characters.
Python3
test_list = [ 1 , 3 , 4 , 5 ]
test_str = 'gfg'
print ( "The original list : " + str (test_list))
print ( "The original string : " + str (test_str))
test_list.append(test_str)
print ( "The list after appending is : " + str (test_list))
|
Output
The original list : [1, 3, 4, 5]
The original string : gfg
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
Python3
test_list = [ 1 , 3 , 4 , 5 ]
test_str = 'gfg'
print ( "The original list : " + str (test_list))
print ( "The original string : " + str (test_str))
index = len (test_list)
test_list.insert(index, test_str)
print ( "The list after appending is : " + str (test_list))
|
Output
The original list : [1, 3, 4, 5]
The original string : gfg
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
Python3
test_list = [ 1 , 3 , 4 , 5 ]
test_str = 'gfg'
print ( "The original list : " + str (test_list))
print ( "The original string : " + str (test_str))
test_list.extend([test_str])
print ( "The list after appending is : " + str (test_list))
|
Output
The original list : [1, 3, 4, 5]
The original string : gfg
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 itertools.chain()
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
Python3
import itertools
test_list = [ 1 , 3 , 4 , 5 ]
test_str = 'gfg'
print ( "The original list : " + str (test_list))
print ( "The original string : " + str (test_str))
test_list = list (itertools.chain(test_list, [test_str]))
print ( "The list after appending is : " + str (test_list))
|
Output
The original list : [1, 3, 4, 5]
The original string : gfg
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
Python3
test_list = [ 1 , 3 , 4 , 5 ]
test_str = "gfg"
print ( "The original list : " + str (test_list))
print ( "The original string : " + str (test_str))
test_list + = ["".join( map ( str , test_str))]
print ( "The list after appending is : " + str (test_list))
|
Output
The original list : [1, 3, 4, 5]
The original string : gfg
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.
Python3
from functools import reduce
test_list = [ 1 , 3 , 4 , 5 ]
test_str = "gfg"
concatenate = lambda x, y: x + ["".join( map ( str , y))]
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)