A propos de exec()
Fermé
noradan
Messages postés
17
Date d'inscription
mercredi 29 juillet 2009
Statut
Membre
Dernière intervention
8 août 2020
-
18 janv. 2014 à 00:40
Utilisateur anonyme - 18 janv. 2014 à 11:08
Utilisateur anonyme - 18 janv. 2014 à 11:08
A voir également:
- Erreur de format pour exec()
- Format de menace perver - Forum Vos droits sur internet
- Telecharger format factory - Télécharger - Conversion & Codecs
- Formate pour taxer client connexion ✓ - Forum Matériel informatique
- Formate pour taxer client 500€ ✓ - Forum Consommation et internet
- Erreur 1004 vba ✓ - Forum VB / VBA
2 réponses
ElementW
Messages postés
4764
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 295
Modifié par gravgun le 18/01/2014 à 11:11
Modifié par gravgun le 18/01/2014 à 11:11
'lut, la version 3 a introduit plein de changements; dont la manière dont on gère les variables/fonctions accessibles par
Quand on regarde la doc, on s'aperçoit que 2 paramètres peuvent être ajoutés: ils servent à définir les objets accessibles par le code, le premier étant les variables globales (donc on ne va rien mettre vu que ton code ne fait qu'une assignation; les variables builtin sont ajoutées toutes seules si absentes de toute façon), le deuxième étant un conteneur pour les variables locales; vide par défaut, qui se remplira.
Un exemple sera probablement plus compréhensible:
Ça marche!
EDIT: mais comme fred1599 le dit,
from human import idiocy
del idiocy
exec.
Quand on regarde la doc, on s'aperçoit que 2 paramètres peuvent être ajoutés: ils servent à définir les objets accessibles par le code, le premier étant les variables globales (donc on ne va rien mettre vu que ton code ne fait qu'une assignation; les variables builtin sont ajoutées toutes seules si absentes de toute façon), le deuxième étant un conteneur pour les variables locales; vide par défaut, qui se remplira.
Un exemple sera probablement plus compréhensible:
def fct(): variables = {} exec('toto=[1,2,3]', {}, variables) print(variables["toto"]) fct()
$ python3.3 test.py [1, 2, 3]
Ça marche!
EDIT: mais comme fred1599 le dit,
execc'est pas bien!
from human import idiocy
del idiocy