Re: dictionnons dans la joie et la bonne humeur...
fred a écrit :
> Bruno Desthuilliers <bruno.42.desthuilliers@wtf.websiteburo.oops.com > a écrit :
>
>> fred a écrit :
>>> Bruno Desthuilliers <bdesth.quelquechose@free.quelquepart.fr> a écrit :
>>>
>>>> question con: c'est quoi, le but de la manoeuvre, au juste ?
>>> réponse con : merci d'avoir posé la question.
>>> Parce que en fait, je n'en ai pas besoin, de dico.
>>> Et en plus, ça vous évite un post super long pour que je vous exlique
>>> par le menu ma tambouille, alors...
>> Bin, tu fais comme tu veux, mais le but de la question était de voir
>> si y avait pas mieux à faire qu'un truc tordu...
> Mais justement, le fait d'écrire mon petit laïus pour expliquer la chose
> m'a fait voir que c'était vraiment un truc tordu, et que donc,
> de truc tordu, y en a pu.
Lol !-)
> Bon, pour résumer, je passe des arguments en ligne de commande,
> des « mot-clés », qui sont associés à des variables (que j'appelle « flag
> » parce que ce sont des booléens).
>
> Le but est de détecter quels sont les mot-clés qui sont passés en ligne
> de commande (auquel cas le flag est mis à True) pour pouvoir les repasser à False
> par la suite parce que.
Tu sais qu'il existe des packages pour ça dans la bibliothèque standard?
Mais bon, même si tu tiens à réinventer la roue...
> J'ai donc construit mon dico comme ça
>
> {'mot clé': 'variable_flag'}
>
> et ensuite, je fais un
>
> if (p in dico.keys()):
> exec('self.'+dico[p]+' = False')
Hem...
Tu pouvais pas dire tout de suite qu'il s'agissait d'attributs d'un
objet, non ?
if (p in dico): # pas besoin du keys()
setattr(self, dico[p], False)
> Ok, d'aucuns trouveront peut-être ça tordu quand même,
> mais nettement moins que mon idée initiale.
Oh bonne mère... je préfère ne pas savoir ce que c'était, alors...
> Et ça marche du tonerre.
>
> Bon, le coup du exec ne me plaît pas des masses, ok...
>
Moi non plus. Dans 99,9% des fois où j'ai utilisé un exec, c'est soit
que je ne connaissais pas la bonne façon de faire, soit que mon design
puait des pieds...
|