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
814 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!

source:php.cn
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