je suis en train d'apprendre le python, et actuellement je travail sur le TP du pendu.
J'ai une fonction qui permet d'afficher un mot avec des * ou les lettres que l'utilisateur a trouver.
J'ai un probleme lors de l'affichage:
def printWord(mot,dicLettre={}):
""" Fonction qui affiche le mot avec des **** """
i = 0
while i<len(mot):
if i in dicLettre:
print(dicLettre[i],)
else:
print("*",)
i += 1
print("")
ceci devrai me donné un truc du genre
F****R
Mais j'obtiens ceci:
F
*
*
*
*
R
Avez vous une idée pour résoudre mon problème ? (j'ai bien essayé la virgule a la fin de print, mais cela ne change rien ... )
Merci d'avance pour votre aide
Le jour où Microsoft fera des choses qui ne plantent pas, ça sera des clous ...
Le premier est très simple : tu ne sais pas utiliser la fonction print de Python 3.
Voici le prototype de cette fonction, ça devrait suffire pour résoudre ton premier souci :
Le deuxième problème est plus de l'ordre des performances et de la sémantique. Plutôt que de chercher à afficher chaque caractères les uns après les autres, il serait plus simple de construire un chaîne de caractères à afficher en une seule fois.
définir <chaîne> vide
pour chaque <caractère> dans <mot>:
si <caractère> est dans <liste_caractères_trouvés>:
ajouter <caractère> à <chaîne>
sinon:
ajouter '*' à <chaîne>
afficher <chaîne>
Ah oui, non mais n'importe quoi ....
je fait le boulet ....
Encore merci
Le jour où Microsoft fera des choses qui ne plantent pas, ça sera des clous ...
[QST] print et saut de ligne
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.