Python | Convert list of list of strings to list of strings



Method # 1: Using map () + generator expression + join () + isdigit ()
This task can be accomplished using a combination of the above functions … In this we connect numbers using concatenation and build whole strings. Map () is used to apply logic to each item in the list.

# Python3 code to demonstrate how it works
# Convert list of strings to list of strings
# using map () + expression generator + join () + isdigit ()

 
# helper function

def convert (sub):

return " ". join (ele if ele.isdigit () else " " for ele in sub)

 < br /> # initialize the list

test_list = [ "[1, 4]" , "[5, 6]" , "[7, 10]" ]

 
# print original list

print ( "The original list:" + str (test_list))

 
# Convert list of strings to list of strings
# using map () + expression generator + join () + isdigit ()

res =   list ( map (convert, test_list))

 
# print result

print ( "List after performing conversion:" + str (res))

Output:

 The original list: [`[1, 4]`, `[5, 6] `,` [7, 10] `] List after performing conversion: [` 14`, `56`,` 710`] 

Method # 2: Using eval () + list comprehension
A combination of the above functions can be used to accomplish this task. In this case, eval () interprets each string as a list, and then we can convert that list to strings using join (). List comprehension is used to iterate over the list.

# Python3 code to demonstrate how it works
# Convert the list list of strings to list of strings
# using eval () + list comprehension

 
# initialize the list

test_list = [ "[1, 4]" , "[5, 6]" , "[7, 10]" ]

 
# print the original list

print ( " The original list: " + str (test_list))

 
# Convert list of strings to list of strings
# using eval () + list comprehension

res = [`` .join ( str (b) for b in eval (a)) for a in test_list]

 
# print result

print ( " L ist after performing conversion: " + str (res))

Output:

 The original list: [ `[1, 4]`, `[5, 6]`, `[7, 10]`] List after performing conversion: [`14`,` 56`, `710`]