Skip to content
Related Articles
Open in App
Not now

Related Articles

Python | Adding value to sublists

Improve Article
Save Article
  • Last Updated : 02 Jan, 2023
Improve Article
Save Article

Sometimes, we just have to manipulate a list of lists by appending a similar value to all the sublists. Using a loop for achieving this particular task can be an option but sometimes leads to sacrificing the readability of code. It is always wanted to have a oneliner to perform this particular task. Let’s discuss certain ways in which this can be done. 

Method #1: Using list comprehension can be used to perform this particular task using a similar looping construct but in just a single line. This increases code readability. 

Python3




# Python3 code to demonstrate
# appending single value
# using list comprehension
 
# initializing list of lists
test_list = [[1, 3], [3, 4], [6, 5], [4, 5]]
 
# printing original list
print("The original list : " + str(test_list))
 
# declaring element to be inserted
K = "GFG"
 
# using list comprehension
# appending single value
res = [[i, j, K] for i, j in test_list]
 
# printing result
print("The list after adding element :  " + str(res))

Output

The original list : [[1, 3], [3, 4], [6, 5], [4, 5]]
The list after adding element :  [[1, 3, 'GFG'], [3, 4, 'GFG'], [6, 5, 'GFG'], [4, 5, 'GFG']]

  Method #2 : Using list comprehension + “+” operator This method is quite similar to the above method, but the difference is that plus operator is used to add the new element to each sublist. 

Python3




# Python3 code to demonstrate
# appending single value
# using list comprehension + "+" operator
 
# initializing list of lists
test_list = [[1, 3], [3, 4], [6, 5], [4, 5]]
 
# printing original list
print("The original list : " + str(test_list))
 
# declaring element to be inserted
K = "GFG"
 
# using list comprehension + "+" operator
# appending single value
res = [sub + [K] for sub in test_list]
 
# printing result
print("The list after adding element :  " + str(res))

Output

The original list : [[1, 3], [3, 4], [6, 5], [4, 5]]
The list after adding element :  [[1, 3, 'GFG'], [3, 4, 'GFG'], [6, 5, 'GFG'], [4, 5, 'GFG']]

Method #3 : Using for loop

Python3




# Python3 code to demonstrate
# appending single value
 
# initializing list of lists
test_list = [[1, 3], [3, 4], [6, 5], [4, 5]]
 
# printing original list
print("The original list : " + str(test_list))
 
# declaring element to be inserted
K = "GFG"
res = []
for i in test_list:
    i.append(K)
    res.append(i)
 
 
# printing result
print("The list after adding element : " + str(res))

Output

The original list : [[1, 3], [3, 4], [6, 5], [4, 5]]
The list after adding element : [[1, 3, 'GFG'], [3, 4, 'GFG'], [6, 5, 'GFG'], [4, 5, 'GFG']]

Method #4: Using map() and lambda function

Here is the approach using map() and lambda function

Python3




# Python3 code to demonstrate
# appending single value
  
# initializing list of lists
test_list = [[1, 3], [3, 4], [6, 5], [4, 5]]
# printing original list
print("The original list : " + str(test_list))
# Declaring element to be inserted
K = "GFG"
 
# Using map() and lambda function to add element to all sublists
res = list(map(lambda x: x + [K], test_list))
print("The list after adding element :  " + str(res))
 
#This code is contributed by Edula Vinay Kumar Reddy

Output

The original list : [[1, 3], [3, 4], [6, 5], [4, 5]]
The list after adding element :  [[1, 3, 'GFG'], [3, 4, 'GFG'], [6, 5, 'GFG'], [4, 5, 'GFG']]

Time complexity: O(n)

Auxiliary Space: O(n)


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!