Print a list separated by commas in Python

avatar

Borislav Hadzhiev

Last updated: Sep 11, 2022

banner

Photo from Unsplash

Print a list separated by commas in Python #

To print a list separated by commas:

  1. Use the str.join() method to join the list into a string with a comma separator.
  2. If the list contains numbers, convert them to strings.
  3. Use the print() function to print the string.
main.py
list_of_strings = ['bobby', 'hadz', 'com'] result = ', '.join(list_of_strings) print(result) # 👉️ bobby, hadz, com # ------------------------------------------- list_of_integers = [77, 14, 22] result = ', '.join(str(item) for item in list_of_integers) print(result) # 👉️ 77, 14, 22

We used the str.join() method to join the list into a string separated by commas and passed the result to the print() function.

The str.join method takes an iterable as an argument and returns a string which is the concatenation of the strings in the iterable.

Note that the method raises a TypeError if there are any non-string values in the iterable.

If your list contains numbers or other types, convert all of the values to strings before calling join().

main.py
list_of_integers = [77, 14, 22] result = ', '.join(str(item) for item in list_of_integers) print(result) # 👉️ 77, 14, 22

We used a generator expression to iterate over the list.

Generator expressions are used to perform some operation for every element or select a subset of elements that meet a condition.

On each iteration, we use the str() class to convert the number to a string.

The string the join() method is called on is used as the separator between the elements.

main.py
list_of_integers = [77, 14, 22] result = ','.join(str(item) for item in list_of_integers) print(result) # 👉️ 77,14,22

You can also use the map() function to convert all items in the list to strings before calling join().

main.py
list_of_integers = [77, 14, 22] result = ','.join(map(str, list_of_integers)) print(result) # 👉️ 77,14,22

The map() function takes a function and an iterable as arguments and calls the function with each item of the iterable.

Alternatively, you can use the sep argument in the call to the print() function.

Print a list separated by commas using sep #

Use the sep argument to print a list separated by commas, e.g. print(*list_of_strings, sep=','). The items in the list will get unpacked in the call to the print() function and will get printed with a comma separator.

main.py
list_of_strings = ['bobby', 'hadz', 'com'] print(*list_of_strings, sep=',') # 👉️ bobby,hadz,com print(*list_of_strings, sep=', ') # 👉️ bobby, hadz, com
Notice that we used the iterable unpacking * operator to unpack the items of the list in the call to print().

The * iterable unpacking operator enables us to unpack an iterable in function calls, in comprehensions and in generator expressions.

The sep argument is the separator between the arguments we pass to print().

main.py
print('bobby', 'hadz', sep='') # 👉️ bobbyhadz print('bobby', 'hadz') # 👉️ bobby hadz

By default, the sep argument is set to a space.

I wrote a book in which I share everything I know about how to become a better, more efficient programmer.
book cover
You can use the search field on my Home Page to filter through all of my articles.