Nom de variables variable et évaluation
Bonjour,
Pour éviter d'avoir à coder 1 centaine de fois la commande suivante :
Rxx_input_tab = open('Rxx-input-file.csv','w')
en faisant varier les valeurs xx de 10 à 99,
j'ai essayé de créer une boucle qui ressemble à ceci :
Code:
1 2 3 4 5
|
for i in range(10,99):
s = str(i)
open_file = s + "_input_tab = open('" + s + "-input-file.csv','w')"
eval(open_file) |
malheureusement, ça ne marche pas :
open_file contient bien la chaine attendue telle que :
R10_input_tab = open('R10-input-file.csv','w')
mais, l'eval de open_file échoue avec le message suivant :
Code:
1 2 3 4 5 6 7 8
|
>>> eval(open_file)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1
R10_input_tab = open('R10-input-file.csv','w')
^
SyntaxError: invalid syntax |
L'erreur pointe sur le signe "=" qui ne semble pas supporter par la fonction eval() ;
Si quelqu'un a une idée pour faire varier le nom de la variable "Rxx_input_tab" (pas le nom du fichier lui-même, ce qui ne pose pas de pb, sans même passer par eval), merci d'avance
(je suis en Python 2.7)