Open In App

Python | Convert List of lists to list of Strings

Improve
Improve
Like Article
Like
Save
Share
Report

Interconversion of data is very popular nowadays and has many applications. In this scenario, we can have a problem in which we need to convert a list of lists, i.e matrix into list of strings. Let’s discuss certain ways in which this task can be performed. 

Method #1 : Using list comprehension + join() 

The combination of above functionalities can be used to perform this task. In this, we perform the task of iteration using list comprehension and join() is used to perform task of joining string to list of strings. 

Python3




# Python3 code to demonstrate working of
# Convert List of lists to list of Strings
# using list comprehension + join()
 
# initialize list
test_list = [["g", "f", "g"], ["i", "s"], ["b", "e", "s", "t"]]
 
# printing original list
print("The original list : " + str(test_list))
 
# Convert List of lists to list of Strings
# using list comprehension + join()
res = [''.join(ele) for ele in test_list]
 
# printing result
print("The String of list is : " + str(res))


Output : 

The original list : [['g', 'f', 'g'], ['i', 's'], ['b', 'e', 's', 't']]
The String of list is : ['gfg', 'is', 'best']

Time Complexity: O(n2)
Auxiliary Space: O(n)

Method #2: Using map() + join() 

The task above can also be performed using combination of above methods. In this, we perform the task of conversion using join and iteration using map(). 

Python3




# Python3 code to demonstrate working of
# Convert List of lists to list of Strings
# using map() + join()
 
# initialize list
test_list = [["g", "f", "g"], ["i", "s"], ["b", "e", "s", "t"]]
 
# printing original list
print("The original list : " + str(test_list))
 
# Convert List of lists to list of Strings
# using map() + join()
res = list(map(''.join, test_list))
 
# printing result
print("The String of list is : " + str(res))


Output

The original list : [['g', 'f', 'g'], ['i', 's'], ['b', 'e', 's', 't']]
The String of list is : ['gfg', 'is', 'best']

Time Complexity: O(n)
Auxiliary Space: O(n)

Method #3: Without any builtin methods

Python3




# Python3 code to demonstrate working of
# Convert List of lists to list of Strings
 
# initialize list
test_list = [["g", "f", "g"], ["i", "s"], ["b", "e", "s", "t"]]
 
# printing original list
print("The original list : " + str(test_list))
 
# Convert List of lists to list of Strings
res = []
for i in test_list:
    s = ""
    for j in i:
        s += j
    res.append(s)
 
# printing result
print("The String of list is : " + str(res))


Output

The original list : [['g', 'f', 'g'], ['i', 's'], ['b', 'e', 's', 't']]
The String of list is : ['gfg', 'is', 'best']

Time Complexity: O(n2)
Auxiliary Space: O(n)

Method #4: Using reduce() function

Use the reduce() function from the functools module to join all the strings in the inner lists

  • Initialize list
  • printing original list
  • Convert List of lists to list of Strings using reduce()
  • printing result

Python3




from functools import reduce
 
# initialize list
test_list = [["g", "f", "g"], ["i", "s"], ["b", "e", "s", "t"]]
 
# printing original list
print("The original list : " + str(test_list))
 
# Convert List of lists to list of Strings using reduce()
res = [reduce(lambda x, y: x + y, inner_list) for inner_list in test_list]
 
# printing result
print("The String of list is : " + str(res))


Output

The original list : [['g', 'f', 'g'], ['i', 's'], ['b', 'e', 's', 't']]
The String of list is : ['gfg', 'is', 'best']

Time complexity: O(n*m), where n is the length of the outer list and m is the length of the longest inner list.
Auxiliary space: O(n), where n is the length of the outer list.



Last Updated : 06 Apr, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads