Convert a List of Characters into a String – Python
Our task is to convert a list of characters into a single string. For example, if the input is [‘H’, ‘e’, ‘l’, ‘l’, ‘o’], the output should be “Hello”.
Using join()
We can convert a list of characters into a string using join() method, this method concatenates the list elements (which should be string type) into one string.
a = ['P', 'y', 't', 'h', 'o', 'n']
# Convert list of characters to string
s = ''.join(a)
print(s)
a = ['P', 'y', 't', 'h', 'o', 'n']
# Convert list of characters to string
s = ''.join(a)
print(s)
Output
Python
Explanation: ”.join(a) joins all elements in a using an empty string as the separator.
Table of Content
Using reduce()
reduce() function applies a function cumulatively to the elements of the list, reducing them to a single value.
from functools import reduce
a = ['P', 'y', 't', 'h', 'o', 'n']
res = reduce(lambda x, y: x + y, a)
print(res)
from functools import reduce
a = ['P', 'y', 't', 'h', 'o', 'n']
res = reduce(lambda x, y: x + y, a)
print(res)
Output
Python
Explanation:
- lambda x, y: x + y adds two characters at a time.
- reduce(…) repeats this process until only one string remains.
Using for Loop
If we want to join all the characters of the given list without using any inbuilt method then we can use a for loop.
a = ['P', 'y', 't', 'h', 'o', 'n']
s = ''
# Loop through each character in list 'a' and add it to string 's'
for c in a:
s += c
print(s)
a = ['P', 'y', 't', 'h', 'o', 'n']
s = ''
# Loop through each character in list 'a' and add it to string 's'
for c in a:
s += c
print(s)
Output
Python
Explanation: Iterates through a
, adding each character to res and b
uilds the final string step by step.