Obtenir le nom qui n'est pas définie à partir de NameError en python
Comme vous le savez, si nous n'avons tout simplement:
>>> a > 0
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
a > 0
NameError: name 'a' is not defined
Est-il un moyen de la capture de l'exception ou de l'erreur et de l'extraction de la valeur 'a'.
J'ai besoin de cela parce que je suis eval
uating certains de créer dynamiquement des expressions, et souhaitez pour récupérer les noms qui ne sont pas définis.
Espère que je me suis fait clair.
Merci!
Manuel
Si ce n'est pas définie, comment peut-il avoir de la valeur?
Je veux extraire le nom, pas la valeur. J'ai dit "la valeur" a", pas "la valeur d'un".
Pourquoi avez-vous besoin d'utiliser
Ce qui serait le bon outil? -.- Vous pourriez inclure dans votre commentaire précédent...
Je veux extraire le nom, pas la valeur. J'ai dit "la valeur" a", pas "la valeur d'un".
Pourquoi avez-vous besoin d'utiliser
eval
? Si vous souhaitez créer une interface Python, ce n'est pas le bon outil. Si vous souhaitez créer un évaluateur d'expression pour votre application, ce n'est pas le bon outil.Ce qui serait le bon outil? -.- Vous pourriez inclure dans votre commentaire précédent...
OriginalL'auteur Manuel Aráoz | 2010-02-16
Vous devez vous connecter pour publier un commentaire.
Si vous ne voulez pas utiliser les regex, vous pourriez faire quelque chose comme ceci à la place
OriginalL'auteur John La Rooy
Vous pouvez analyser les exceptions de la chaîne pour " pour extraire de la valeur.
OriginalL'auteur kepkin
Pas
import exceptions
nécessaires en Python 2.xVous attribuer la référence de " a " en tant que tel:
OriginalL'auteur dansalmo