Bonjour a tous,

je reviens avec mon code pour mon jeu du pendu

Celui ci fonctionne mais je viens de remarquer que lorsque j'entre une lettre qui a plusieurs positions, celle ci est toujours placée a la première place rencontrée et donc impossible de gagner le jeu car la deuxième position n'est jamais atteinte.

Ex :

panthere. Le "e" est toujours placé après le "h" mais jamais en fin de mot

comment puis atteindre la deuxième position en cas de doublon du caractere ?

Merci d'avance pour votre aide

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
import getpass
mot = getpass.getpass("Entrez le mot caché :")
mot = list(str(mot))
compteur = 0
cpte =len(mot)
mot2 = [" "] * cpte
print(("Le mot a trouver comprend :"),cpte,("caracteres"))
print(mot2)
test = None
while compteur !=15 and test != True:
    lettre = str(input("Entrez votre lettre : "))
    test = lettre in mot
    if test == True:
        place = mot.index(lettre) 
        plac = place + 1
        print(("La lettre trouvé est a la"), plac, ("position"))
        mot2[place] = lettre
        print(mot2)
        test = mot == mot2
        compteur = compteur + 1
    else:
        print("La lettre ne se trouve pas de le mot")
        compteur = compteur + 1
 
if mot != mot2:
    print("Perdu, vous ferez mieux la prochaine fois")
    print(("Le mot a trouver etait : "), mot)
else:
    print("bravo, vous etes un champion")
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Entrez votre lettre : e
La lettre trouvé est a la 6 position
['p', 'a', 'n', 't', 'h', 'e', 'r', ' ']
Perdu, vous ferez mieux la prochaine fois
Le mot a trouver etait :  ['p', 'a', 'n', 't', 'h', 'e', 'r', 'e']