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']"
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)
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 :
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!