Définir des variables par itération

Résolu
Brocket -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -

Bonjour,

je voudrais savoir s'il serait possible de définir des variables itérativement.

Imaginons que je voudrais créer les variables suivantes:

v1 = 1

v2 = 2

v3 = 3

...

v100 = 100

Comme je n'ai pas envie d'écrire 100 fois la même chose, j'aimerais créer une boucle un peu comme ça :

for i in range(1,101):

     v+str(i) = i

Bien évidemment ça ne marche pas, quelqu'un aurait une solution ?

Merci
Windows / Firefox 110.0

A voir également:

3 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 

bonjour,

Il est possible de faire cela.  Cependant, je trouve que c'est une très mauvaise idée, et j'hésite donc à t'expliquer comment faire.

Pourquoi n'utilises-tu pas une seule variable, qui serait un tableau dans lequel tu pourrais enregistrer de multiples valeurs?

2
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 

un exemple:

v={}
for i in range(1,11):
     v[i] = i*2
for w in range(1,11):
    print(w,v[w])
0
PierrotLeFou
 

Autre problème, le programme saurait-il combien de variables sont créées?
Si tu dois faire des tests sur tes variables, est-ce que tu veux tout générer automatiquement?
Par exemple:
if v60 == 310:
    # bla bla bla ...
Ça demeure encore tout aussi long de faire tous ces tests à la main.
Avec des tableaux, comme l'a mentionné yg_be, c'est netttement plus simple.

0
PierrotLeFou
 

Le point sur lequel je voulais insister n'est pas le fait que c'et plus ou moins compliqué de générer des variables en série (ça se fait bien avec exec() ).
C'est plutôt le code qui va les utiliser. On en arrive rapidement à écrire un programme qui va générer un autre programme (générateur de code).
La plupart du temps, ce n'est pas approprié ou justifiable.
Ça peut se justifier si on veut écrire du code super optimisé et assez gros.

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 

La méthode à laquelle je pense est très simple à utiliser, aussi bien pour assigner des valeurs que pour les lire ou les modifier.

Cependant, je pense préférable de structurer les données en tenant compte des bonnes pratiques.

0