Convertir une liste en chaîne séparée par des virgules en Python
-
Utilisez la fonction
join()
pour convertir une liste en une chaîne séparée par des virgules en Python -
Utilisez le module
StringIO
pour convertir une liste en une chaîne séparée par des virgules en Python
Nous pouvons utiliser une liste pour stocker différents éléments sous un nom commun. Une chaîne est un ensemble de caractères.
Nous allons convertir une liste en une chaîne séparée par des virgules dans ce didacticiel.
Utilisez la fonction join()
pour convertir une liste en une chaîne séparée par des virgules en Python
La fonction join()
combine les éléments d’un itérable et renvoie une chaîne. Nous devons spécifier le caractère qui sera utilisé comme séparateur pour les éléments de la chaîne.
Pour créer une chaîne séparée par des virgules, nous utiliserons la virgule comme séparateur.
Voir le code ci-dessous.
lst = ["c", "e", "a", "q"]
s = ",".join(lst)
print(s)
Production :
c,e,a,q
La méthode ci-dessus est uniquement limitée à une liste contenant des chaînes.
Nous pouvons utiliser la compréhension de liste et la fonction str()
pour travailler avec une liste contenant des entiers ou d’autres éléments. Avec la compréhension de liste, nous pouvons parcourir facilement les éléments sur une seule ligne à l’aide de la boucle for
, et convertir chaque élément en une chaîne à l’aide de la fonction str()
.
Nous implémentons cela dans le code suivant.
lst = [8, 9, 4, 1]
s = ",".join([str(i) for i in lst])
print(s)
Production :
8,9,4,1
Nous pouvons également éliminer la compréhension de liste en utilisant la fonction map()
. La fonction map()
peut être utilisée pour convertir tous les éléments de la liste en une chaîne en appliquant la fonction str()
à chaque élément.
Par example,
lst = [8, 9, 4, 1]
s = ",".join(map(str, lst))
print(s)
Production :
8,9,4,1
Utilisez le module StringIO
pour convertir une liste en une chaîne séparée par des virgules en Python
L’objet StringIO
est similaire à un objet fichier mais en mémoire pour travailler avec des textes. En Python 2, il peut être importé directement à l’aide du module StringIO
. En Python 3, il était stocké dans le module io
.
Nous pouvons utiliser la fonction csv.writerow()
pour écrire la liste sous forme de ligne séparée par des virgules pour un fichier CSV dans l’objet StringIO
. Pour cela, nous devons d’abord instancier un objet csv.writer
. On peut alors stocker le contenu de cet objet dans une chaîne en utilisant la fonction getvalue()
.
Voir le code suivant.
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)
Production :
8,9,4,1
On peut aussi utiliser la fonction print()
avec l’opérateur unpack. L’opérateur de décompactage *
décompresse tous les éléments d’un itérable et le stocke dans l’objet StringIO
en utilisant le paramètre file
de la fonction print()
.
Voir le code ci-dessous.
import io
lst = [8, 9, 4, 1]
s_io = io.StringIO()
print(*lst, file=s_io, sep=",", end="")
s = s_io.getvalue()
print(s)
Production :
8,9,4,1
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.
LinkedInArticle connexe - Python List
- Convertir un dictionnaire en liste en Python
- Supprimer toutes les occurrences d'un élément d'une liste en Python
- Supprimer les doublons de la liste en Python
- Comment obtenir la moyenne d'une liste en Python
- Quelle est la différence entre les méthodes de liste append et extend
- Comment convertir une liste en chaîne de caractères en Python
Article connexe - Python String
- Supprimer les virgules de la chaîne en Python
- Comment vérifier qu'une chaîne est vide de manière pythonique
- Convertir une chaîne en nom de variable en Python
- Comment supprimer les espaces dans une chaîne de caractères en Python
- Comment extraire des nombres d'une chaîne de caractèresen Python
- Comment convertir une chaîne de caractères en datetime en Python