Maison > développement back-end > Tutoriel Python > Comment convertir facilement une représentation sous forme de chaîne d'une liste en une liste Python ?

Comment convertir facilement une représentation sous forme de chaîne d'une liste en une liste Python ?

Susan Sarandon
Libérer: 2024-12-28 20:51:14
original
866 Les gens l'ont consulté

How to Easily Convert a String Representation of a List to a Python List?

Convertir facilement une représentation sous forme de chaîne d'une liste en liste

Question :

Comment convertir quelque chose comme le suivant Convertir la représentation sous forme de chaîne de la liste en liste ?

x = '[ "A","B","C" , " D"]'
Copier après la connexion

Même si l'utilisateur ajoute des espaces entre virgules et entre guillemets, cela doit être géré correctement et converti en :

x = ["A", "B", "C", "D"] 
Copier après la connexion

Réponse :

Cette conversion peut être facilement réalisée en utilisant la fonction ast.literal_eval().

import ast

x = '[ "A","B","C" , " D"]'
x = ast.literal_eval(x)
Copier après la connexion

Fonction ast.literal_eval() :

  • Évalue un nœud d'expression ou une chaîne contenant uniquement un littéral Python ou un affichage de conteneur.
  • La chaîne ou le nœud fourni ne peut contenir que les structures littérales Python suivantes : chaîne, octet, nombre, tuple, liste, dictionnaire, ensemble, booléen, aucun et points de suspension.
  • peut être utilisé pour évaluer des chaînes contenant des valeurs Python sans analyser les valeurs vous-même. Il ne peut pas évaluer des expressions arbitrairement complexes, telles que celles impliquant des opérateurs ou des index.

Afin d'éliminer davantage l'impact des espaces, vous pouvez utiliser l'analyse de liste :

x = [n.strip() for n in x]
Copier après la connexion

obtiendra le résultat final :

['A', 'B', 'C', 'D']
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal