Maison > développement back-end > Tutoriel Python > Comment puis-je créer dynamiquement des variables en Python basées sur des valeurs de chaîne ?

Comment puis-je créer dynamiquement des variables en Python basées sur des valeurs de chaîne ?

Mary-Kate Olsen
Libérer: 2024-12-21 03:35:09
original
596 Les gens l'ont consulté

How Can I Dynamically Create Variables in Python Based on String Values?

Substitution de variables pour les chaînes

Lorsque vous devez créer une variable basée sur la valeur d'une chaîne, l'approche typique consiste à utiliser l'affectation . Cependant, cette technique devient problématique lorsque vous souhaitez réaffecter la valeur de chaîne d'origine.

Supposons qu'une variable de chaîne foo soit affectée à la chaîne "bar". Pour définir une nouvelle variable basée sur la valeur de foo, vous pouvez essayer ce qui suit :

foo = "bar"
foo = "something else"
Copier après la connexion

Ce code générera une erreur car Python réaffectera la valeur de foo à "quelque chose d'autre", au lieu de créer une nouvelle variable nommée bar.

Création de variable dynamique avec exec()

Pour obtenir le comportement souhaité de création d'un nouvelle variable basée sur une valeur de chaîne, vous pouvez utiliser la fonction exec(). exec() exécute dynamiquement le code Python, vous permettant de construire des variables par programme.

Voici comment utiliser exec() pour créer une variable basée sur une chaîne :

foo = "bar"
exec(foo + " = 'something else'")
print(bar)  # Outputs "something else"
Copier après la connexion

Dans cet exemple, exec() exécute la chaîne bar = 'something else', créant ainsi une nouvelle variable nommée bar avec la valeur "something else".

Cette technique est particulièrement utile lorsque vous devez générer des variables de manière dynamique en fonction d'une entrée externe ou dans des situations où les noms de variables sont inconnus au moment de la compilation.

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