Convertir lista a cadena separada por comas en Python

Manav Narula 30 enero 2023
  1. Utilice la función join() para convertir una lista en una cadena separada por comas en Python
  2. Use el módulo StringIO para convertir una lista en una cadena separada por comas en Python
Convertir lista a cadena separada por comas en Python

Podemos usar una lista para almacenar diferentes elementos bajo un nombre común. Una cadena es una colección de caracteres.

En este tutorial, convertiremos una lista en una cadena separada por comas.

Utilice la función join() para convertir una lista en una cadena separada por comas en Python

La función join() combina los elementos de un iterable y devuelve una cadena. Necesitamos especificar el carácter que se utilizará como separador de los elementos de la cadena.

Para crear una cadena separada por comas, usaremos la coma como separador.

Vea el código a continuación.

lst = ["c", "e", "a", "q"]
s = ",".join(lst)
print(s)

Producción :

c,e,a,q

El método anterior solo se limita a una lista que contiene cadenas.

Podemos usar la comprensión de listas y la función str() para trabajar con una lista que contiene números enteros u otros elementos. Con la comprensión de listas, podemos iterar sobre los elementos fácilmente en una sola línea usando el bucle for, y convertir cada elemento en una cadena usando la función str().

Implementamos esto en el siguiente código.

lst = [8, 9, 4, 1]
s = ",".join([str(i) for i in lst])
print(s)

Producción :

8,9,4,1

También podemos eliminar la comprensión de listas usando la función map(). La función map() se puede utilizar para convertir todos los elementos de la lista en una cadena aplicando la función str() a cada elemento.

Por ejemplo,

lst = [8, 9, 4, 1]
s = ",".join(map(str, lst))
print(s)

Producción :

8,9,4,1

Use el módulo StringIO para convertir una lista en una cadena separada por comas en Python

El objeto StringIO es similar a un objeto de archivo pero en memoria para trabajar con textos. En Python 2, se puede importar directamente usando el módulo StringIO. En Python 3, se almacenaba en el módulo io.

Podemos usar la función csv.writerow() para escribir la lista como una fila separada por comas para un archivo CSV en el objeto StringIO. Para esto, primero debemos instanciar un objeto csv.writer. Luego podemos almacenar el contenido de este objeto en una cadena usando la función getvalue().

Consulte el siguiente código.

import io
import csv

lst = [8, 9, 4, 1]
s_io = io.StringIO()
writer = csv.writer(s_io)
writer.writerow(lst)
s = s_io.getvalue()
print(s)

Producción :

8,9,4,1

También podemos usar la función print() con el operador desempaquetar. El operador de desempaquetar * desempaqueta todos los elementos de un iterable y lo almacena en el objeto StringIO usando el parámetro file en la función print().

Vea el código a continuación.

import io

lst = [8, 9, 4, 1]
s_io = io.StringIO()
print(*lst, file=s_io, sep=",", end="")
s = s_io.getvalue()
print(s)

Producción :

8,9,4,1
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artículo relacionado - Python List

Artículo relacionado - Python String