boucle avec attributs

boucle avec attributs - Python - Programmation

Marsh Posté le 09-08-2004 à 17:13:29    

bonjour, je souhaite renseigner les attributs de ma classe par l'intermediaire d'une boucle :
 
class machin:
  self.nom = ""
  self.id = ""
 
 
attrList = ["nom","id"]
(en fait c automatique, mais c pour simplifier)
 
et moi je voudrais que self.nom et self.id = "val"
 
for att in attrList:
  self.att = "val"
 
mais ca ne marche pas.
Il met val dans l'attribut att et non pas la valeur de att
 
Une idee ?


Message édité par fabs2b le 09-08-2004 à 17:18:12
Reply

Marsh Posté le 09-08-2004 à 17:13:29   

Reply

Marsh Posté le 09-08-2004 à 17:14:34    

heink ?

Reply

Marsh Posté le 09-08-2004 à 17:15:35    

Code :
  1. for i in range(len(attrList)):
  2.     attrList[i] = val


?


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box, and replicate and expand beyond their wildest dreams by throwing away the limits imposed by overbearing genetic r
Reply

Marsh Posté le 09-08-2004 à 17:24:50    

Masklinn a écrit :

Code :
  1. for i in range(len(attrList)):
  2.     attrList[i] = val


?


 
Je parle d'attributs de classe

Reply

Marsh Posté le 09-08-2004 à 17:37:28    

en même temps c'était clair comme du jus de chique

Code :
  1. for att in attrList:
  2.     setattr(self, att, "val" )


quand t'es dans la classe
 
sinon

Code :
  1. obj = MyClass()
  2. for att in attrList:
  3.     setattr(obj, att, val)


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box, and replicate and expand beyond their wildest dreams by throwing away the limits imposed by overbearing genetic r
Reply

Marsh Posté le 09-08-2004 à 17:46:30    

Masklinn a écrit :

en même temps c'était clair comme du jus de chique

Code :
  1. for att in attrList:
  2.     setattr(self, att, "val" )


quand t'es dans la classe
 
sinon

Code :
  1. obj = MyClass()
  2. for att in attrList:
  3.     setattr(obj, att, val)



 
 
 
oui c'est vrai que j'ai eu du mal a poser ma question.
Merci pour la solution !

Reply

Sujets relatifs:

Leave a Replay

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