Comment créer une variable dont le nom est dans une autre variable

Comment créer une variable dont le nom est dans une autre variable - Python - Programmation

Marsh Posté le 24-10-2008 à 15:06:26    

Bonjour,
Je voudrais avoir une variable dont le nom est dans une autre variable.
 
en PHP, ça se fait avec $$mavariable.
 
Merci pour votre aide,
 
Axel

Reply

Marsh Posté le 24-10-2008 à 15:06:26   

Reply

Marsh Posté le 24-10-2008 à 15:39:48    

c'est , généralement, mal d'utiliser ce genre de methode  
les tableaux/collections sont plus souvent conseillés

Reply

Marsh Posté le 24-10-2008 à 15:43:01    

'tain mais vous vous donnez le mot?[:pingouino]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 24-10-2008 à 15:44:10    

axel584 a écrit :

en PHP, ça se fait avec $$mavariable.


...et ça s'appelle du code dégueulasse et illisible...[:dawak]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 24-10-2008 à 16:07:17    

Bah bien sûr que ça s'appelle du code dégueulasse et illisible. Mais si j'ai envie de faire du code dégueulasse et illisible, pourquoi je pourrais pas ?
Vous trouvez que les fonctions lambda sont plus lisibles ?
 
Bon, bah si c'est pas possible en python, tant pis :-)
C'était pour éviter d'avoir à faire 50 fois :
 
if dict.has_key("truc" ) :
  truc = dict["truc"]
 
Merci quand même :-)
 
Axel

Reply

Marsh Posté le 24-10-2008 à 16:08:17    

axel584 a écrit :


C'était pour éviter d'avoir à faire 50 fois :

 

if dict.has_key("truc" ) :
  truc = dict["truc"]

 

J'ai énormément de mal à comprendre ce qui pourrait pousser à faire ça au lieu d'utiliser le tableau.[:pingouino]


Message édité par skeye le 24-10-2008 à 16:08:32

---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 24-10-2008 à 16:23:30    

y'a pas de raison vraiment valable si ce n'est que je suis curieux de savoir si cela était possible avec python...
 
En fait, pour la petite anecdote, j'ai du code ASP que je veux transformer en PSP et je voulais essayer de le faire en me faisant le moins chier possible :-)
 
Mais c'est un peu normal que le code python soit plus propre que de l'ASP :-)

Reply

Marsh Posté le 24-10-2008 à 17:40:31    

axel584 a écrit :

Bah bien sûr que ça s'appelle du code dégueulasse et illisible. Mais si j'ai envie de faire du code dégueulasse et illisible, pourquoi je pourrais pas ?


Tu peux. Mais évite de le faire en python, tu risques de te prendre des taloches par le mec qui passe derrière [:petrus75]

 

Et c'est bien du code dégueulasse et illisible oui [:petrus75]

axel584 a écrit :

Vous trouvez que les fonctions lambda sont plus lisibles ?


Pas compris [:petrus75]

 
axel584 a écrit :

C'était pour éviter d'avoir à faire 50 fois :

 

if dict.has_key("truc" ) :
  truc = dict["truc"]


1. "truc" in dict, pas dict.has_key
2. pourquoi tu ferais un truc pareil exactement [:pingouino dei]
3. et accessoirement, dict est un built-in, ce serait bien d'éviter de l'écraser avec tes variables à toi :o

axel584 a écrit :

y'a pas de raison vraiment valable si ce n'est que je suis curieux de savoir si cela était possible avec python...


Oui c'est possible [:spamafote]

axel584 a écrit :

En fait, pour la petite anecdote, j'ai du code ASP que je veux transformer en PSP et je voulais essayer de le faire en me faisant le moins chier possible :-)


Et alors? Quel est le rapport?


Message édité par masklinn le 24-10-2008 à 17:41:33

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 28-10-2008 à 15:16:49    

Pour répondre à la question, même si c'est une très mauvaise idée, tu peux toujours essayer :  
valeur = eval(variable)
 
qui est l'équivalent à ton $valeur = $$variable;
 
... mais je plussoie sur le fait qeu c'est une mauvaise idée ^^

Reply

Marsh Posté le 03-11-2008 à 15:58:56    

merci beaucoup guybrush02.
 
Je trouve cela plus intéressant de dire que c'est possible et me déconseillé de le faire plutôt que de ne pas dire comment ça se fait.
 
Axel

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed