Comme je suis moi aussi un gros abruti, je relance la question avec un cas concret :
J'utilise python dans Maya pour regler la rotation des phalanges des doigts de la main d'un personnage 3D.
j'ai ces variables, qui correspondent a la valeur de la rotation des phalanges lorsque le poing est ferme. :
IndexP2rotZ = -80
IndexP3rotZ = -90
IndexP4rotZ = -90
MajeurP2rotZ = -85
MajeurP3rotZ = -80
MajeurP4rotZ = -90
AnnulaireP2rotZ = -82
AnnulaireP3rotZ = -85
AnnulaireP4rotZ = -85
AuriculaireP2rotZ = -75
AuriculaireP3rotZ = -90
AuriculaireP4rotZ = -80
j'ai ensuite une fonction "editValue", dont le contenu n'a pas d'interet ici, mais qui fait appele a ces variables :
editValue( "IndexP2_rotateZ", IndexP2rotZ )
// IndexP2_rotateZ est le nom du noeud dans Maya qui gere la rotation de ma phalange.
pour le moment, j'ai ecrit ca :
editValue( "IndexP2_rotateZ", IndexP2rotZ )
editValue( "IndexP3_rotateZ", IndexP3rotZ )
editValue( "IndexP4_rotateZ", IndexP4rotZ )
editValue( "MajeurP2_rotateZ", MajeurP2rotZ )
editValue( "MajeurP3_rotateZ", MajeurP3rotZ )
editValue( "MajeurP4_rotateZ", MajeurP4rotZ )
etc...
Ce qui n'a absolument aucun sens.
3 phalanges par doigts, 4 doigts par main (je ne traite pas le pouce), 2 mains par personnage, 24 lignes de code grotesques.
Je veux pouvoir ecrire :
for doigt in ["Index", "Majeur", "Annulaire", "Auriculaire"] :
for phalange in range( 1, 4 ) :
editValue( doigt+"P"+phalange+"_rotateZ", doigtPphalangerotZ )
Ce qui aurait un peu plus de classe...
J'ai beau essayer de comprendre comment fonctionnent les dictionnaires, je ne vois comment ca peut m'aider dans ce cas precis...
Merci.