flotpython / course

Contenu pédagogique du MOOC Python3 sur fun-mooc.fr
Other
130 stars 22 forks source link

comptage_quatre #35

Closed aollier closed 4 years ago

aollier commented 4 years ago

Utilisation de la méthode join pour ne pas répéter le séparateur.

De plus, la section courante concerne justement les tuples, qui sont des itérables. La méthode join attend comme paramètre un itérable, pas forcément une liste. Donc un tuple convient parfaitement.

parmentelat commented 4 years ago

oui c'est vrai que cette façon de faire fonctionne aussi, mais à mon avis c'est une erreur de faire comme ça
le fait que les trois séparateurs soient un : est une coincidence, si demain on décide qu'en fait on veut champ1;champ2-champ3+champ4 ( je force le trait bien sûr) eh bien il faut tout récrire...
en plus l'ajout de tous ces appels à str() est lourdingue
à mon avis la f-string est bien plus adaptée ici

cela dit on pourrait en faire une quatrième solution si on voulait...

aollier commented 4 years ago

C'est vrai que les 3 appels à la fonction str() alourdissent le code.

Pour les séparateurs, dans la vraie vie on ne s'amuse pas à en mettre des différents, parce qu'il faut s'assurer que le séparateur ne peut pas se retrouver ailleurs et ça devient ingérable si on en a plusieurs. Donc je pense que la solution du join est tout à fait réaliste et représentative d'un vrai code. (Personnellement, je n'ai jamais rencontré le cas de plusieurs séparateurs, mais il est vrai que je n'ai pas tout vu.)

Proposer 4 solutions ça commence à faire beaucoup, mais en même temps ça montre la diversité des solutions. Si tu l'acceptes, je corrige ma proposition sous forme de quatrième solution.

parmentelat commented 4 years ago

Proposer 4 solutions ça commence à faire beaucoup, mais en même temps ça montre la diversité des solutions. Si tu l'acceptes, je corrige ma proposition sous forme de quatrième solution.

pas de souci, il y a d'autres exos qui ont 4 solutions; juste dans les commentaires bien indiquer que ça n'est une bonne idée que si on est sûr que les séparateurs restent tous identiques