Comment convertir des représentations sous forme de chaîne de listes en objets de liste en Python ?

Patricia Arquette
Libérer: 2024-11-08 16:30:01
original
418 Les gens l'ont consulté

How to Convert String Representations of Lists into List Objects in Python?

Conversion de représentations sous forme de chaîne de listes en objets de liste

De nombreuses situations en programmation impliquent de travailler avec des données stockées sous forme de chaînes. Parfois, ces chaînes ressemblent à des listes mais restent sous forme textuelle. La conversion de ces représentations sous forme de chaîne en objets de liste réels peut devenir nécessaire. Voici un scénario courant :

Considérons une chaîne "fruits" qui semble identique à une liste :

fruits = "['apple', 'orange', 'banana']"
Copier après la connexion

Comment convertir :

Pour convertissez cette chaîne en un objet de liste, utilisez la fonction ast.literal_eval :

import ast
fruits = ast.literal_eval(fruits)
Copier après la connexion

Considérations de sécurité :

Bien que ast.literal_eval fournisse une conversion simple, elle est cruciale donner la priorité à la sécurité, en particulier lorsque vous travaillez avec des chaînes provenant de sources non fiables. Comme mentionné dans la documentation de la fonction, elle n'autorise que des structures littérales spécifiques :

  • Chaînes
  • Nombres
  • Tuples
  • Listes
  • Dicts
  • Booléens
  • Aucun

Tenter d'évaluer une chaîne contenant des structures non littérales ou des expressions Python complexes peut présenter des risques de sécurité. Envisagez d'utiliser des approches alternatives si vous traitez des chaînes d'origine inconnue.

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