Python Program: Convert a List to String

Meenakshi Agarwal
By
Meenakshi Agarwal
Hi, I'm Meenakshi Agarwal. I have a Bachelor's degree in Computer Science and a Master's degree in Computer Applications. After spending over a decade in large...
6 Min Read
Convert Python list to string with examples

In this tutorial, you can quickly discover the most efficient methods to convert Python List to String. Several examples are provided to help for clear understanding.

Python provides a magical join() method that takes a sequence and converts it to a string. The list can contain any of the following object types: Strings, Characters, Numbers.

While programming, you may face many scenarios where list-to-string conversion is required. Let’s now see how can we use the join() method in such different cases.

Check Out: Python String to Int and Int to String Conversion

How to Convert Python List to String

As we’ve told above the Python Join() function can easily convert a list to a string so let’s first check out its syntax.

Python Join() Syntax

The syntax of join() is as follows:

string_token.join( iterable )

Parameters:
iterable => It could be a list of strings, characters, and numbers
string_token => It is also a string such as a space ' ' or comma "," etc.

The above method joins all the elements present in the iterable separated by the string_token. Next, you will see the join() function examples to convert a list to a string.

Convert Python List of Strings to a string using join()

Let’s say we have a list of month names.

# List of month names
listOfmonths = ["Jan" , "Feb", "Mar", "April", "May", "Jun", "Jul"]

Now, we’ll join all the strings in the above list considering space as a separator.

"""
Desc: 
 Function to convert List of strings to a string with a separator
"""
def converttostr(input_seq, seperator):
   # Join all the strings in list
   final_str = seperator.join(input_seq)
   return final_str

# List of month names
listOfmonths = ["Jan" , "Feb", "Mar", "April", "May", "Jun", "Jul"]

# List of month names separated with a space
seperator = ' '
print("Scenario#1: ", converttostr(listOfmonths, seperator))

# List of month names separated with a comma
seperator = ', '
print("Scenario#2: ", converttostr(listOfmonths, seperator))

The output is as follows:

Scenario#1:  Jan Feb Mar April May Jun Jul
Scenario#2:  Jan, Feb, Mar, April, May, Jun, Jul

Convert a list of chars into a string

With the help of the join() method, we can also convert a list of characters to a string. See the example given below:

charList = ['p','y','t','h','o','n',' ','p','r','o','g','r','a','m','m','i','n','g']

# Let's convert charList to a string.
finalString = ''.join(charList)

print(charList)
print(finalString)

The output is as follows:

['p', 'y', 't', 'h', 'o', 'n', ' ', 'p', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'i', 'n', 'g']
python programming

Conversion of a mixed list to a string using join()

Let’s assume that we have got a list of some numbers and strings. Since it is a combination of different objects, we need to handle it a little differently.

sourceList = ["I" , "got", 60, "in", "Science", 70, "in", "English",", and", 66, "in", "Maths"]

It is not possible to use the join() function on this list. We first have to convert each element to a string to form a new one, and then only we can call the join() method.

In the below code, we are converting the list into a string and then adding the elements of two lists.

# Let's convert sourceList to a list of strings and then join its elements.
stringList = ' '.join([str(item) for item in sourceList ])

The final string would appear something like:

I got 60 in Science, 70 in English, and 66 in Maths.

You can check out the full working code below:

sourceList = ["I" , "got", 60, "in", "Science,", 70, "in", "English,", "and", 66, "in", "Maths."]

# Let's convert sourceList to a list of strings and then join its elements.
stringList = ' '.join([str(item) for item in sourceList ])

print(stringList)

Get a comma-separated string from a list of numbers

If you simply wish to convert a comma-separated string, then try the below shortcut:

numList = [20, 213, 4587, 7869]
print(str(numList).strip('[]'))

The output is as follows:

20, 213, 4587, 7869

Alternatively, we can use the map() function to convert the items in the list to a string. After that, we can join them as below:

print (', '.join(map(str, numList)))

The output:

20, 213, 4587, 7869

We can even use the new line character (‘\n’) as a separator. See below:

print ('\n'.join(map(str, numList)))

The result is as follows:

20
213
4587
7869

Must Read – Python Replace String with Examples

Share This Article
Subscribe
Notify of
guest

0 Comments
Newest
Oldest
Inline Feedbacks
View all comments