C'est usant. Ton code comporte même des boucles inutiles, des points-virgules, et des erreurs de syntaxe (l. 65 et alentours), que veux-tu qu'on te dise ?
Tu ne comprends pas un mot du code produit, donc tu n'apprends rien, quel intérêt ?
Si je comprend mon code , mais je ne maitrise pas tout le python, je demande juste que quelqu'un me montre comment il faudrait faire , car si je ne savais rien faire , je n'aurai pas fait tout ça comme même , puis c'est pas comme si j'avais rien fait j'ai comme même fourni un effort non négligeable .
Bon j'ai avancé , le programme marche , il est presque fini , mais il y reste un petit bémol .
Je vous le présente :
with open("C:/Users/F/Desktop/DIC.txt", "r") as f_obj:
DICO = f_obj.read().splitlines()
DICO = [[mot] for mot in DICO]
"""
Ouverture du dictionnaire
Création d'un tableau de mot appelé DICO
"""
L6 = []
for mot in DICO:
if len(mot[0])==6 :
L6.append(mot[0])
"Selectionne les mots de 6 lettres"
"Rempli un tableau nommé L6 avec les mots de 6 lettres"
print(L6)
from random import randrange
mots = L6
dessins = [
"VOUS AVEZ 6 ESSAIS" ,
"IL VOUS RESTE 5 ESSAIS" ,
"IL VOUS RESTE 4 ESSAIS",
"IL VOUS RESTE 3 ESSAIS",
"IL VOUS RESTE 2 ESSAIS",
"IL VOUS RESTE 1 ESSAIS",
"IL VOUS RESTE 0 ESSAIS"]
max_erreurs = len(dessins) - 1
def lire_lettre(propositions):
#########################################################################
"""
Demande une lettre à l'utilisateur en s'assurant qu'elle n'a pas déjà
été proposée, puis ajoute cette lettre à la liste des lettres déjà
proposées.
>>> liste=['a', 'b', 'c']
>>> lire_lettre(liste)
Entrez une proposition de lettre : A
Une seule lettre en minuscule, s'il vous plaît.
Entrez une proposition de lettre : a
Cette lettre a déjà été proposée.
Entrez une proposition de lettre : qsdf
Une seule lettre en minuscule, s'il vous plaît.
Entrez une proposition de lettre : e
'e'
>>> print(liste)
['a', 'b', 'c', 'e']
"""
#########################################################################
Supersolution =[]
while True:
mot = input("Entrez une proposition de mot : ")
if len(mot)!= 6 :
print("Le mot doit faire 6 lettres et faire partie de la liste !")
else:
solution = []
if mot == propositions:
print("C'est le bon mot !")
break;
else:
liste_lettre_mot = [i for i in mot]
liste_lettre_propositions = [i for i in propositions]
for i in range(0,6):
if (liste_lettre_mot[i] == liste_lettre_propositions[i]):
solution += liste_lettre_mot[i]
i=i+1
else:
solution += "_"
i=i+1
print("Solution")
print(solution)
return mot
def mot_avec_tirets(mot, propositions):
#########################################################################
"""
Renvoie un mot dont les lettres inconnues sont remplacées par des tirets
>>> mot_avec_tirets('tirets', ['t', 'i'])
'ti--t-'
"""
#########################################################################
m = ''
for lettre in mot:
if lettre in propositions:
m = m + lettre
else:
m = m + '-'
return m
def partie():
#########################################################################
"""
Joue une partie de pendu
retourne True si gagné, False si perdu
"""
#########################################################################
#
# Initialisations
#
erreurs = 0
mot = mots[randrange(len(mots))]
propositions = []
print(mot)
#
# Boucle d'interrogation de l'utilisateur
#
print(dessins[erreurs])
while True:
print("Mots déjà proposés :", propositions)
print("Réponse courante :", mot_avec_tirets(mot, propositions))
lettre = lire_lettre(mot)
if lettre == mot:
print("Bravo, vous avez gagné. Le mot était :", mot)
print("Nombre d'erreurs:", erreurs)
return True
else:
erreurs = erreurs + 1
print(dessins[erreurs])
if erreurs >= max_erreurs:
print("vous êtes pendu, le mot était :", mot)
return False
#############################################################################
# Programme principal
#############################################################################
print("bonjour, merci de jouer à motus en python")
parties = 0
victoires = 0
while True:
parties = parties + 1
if partie():
victoires = victoires + 1
while True:
cont = input("C pour continuer, a pour arrêter : ")
if cont == 'C' or cont == 'A':
break;
if cont == 'A':
break;
print("Vous avez joué", parties, "partie(s)")
print("Vous en avez gagné", victoires)
print("Au revoir et merci")
Mais le léger bémol c'est quand je réessaye regarder le résultat ,
['ABERRA', 'ABERRE', 'ABERRE', 'ABETIE', 'ABETIR', 'ABETIS', 'ABETIT', 'ABETIT', 'ABIMAI', 'ABIMAS', 'ABIMAT', 'ABIMEE', 'ABIMER', 'ABIMES', 'ABIMES', 'ABIMEZ', 'ABJECT', 'ABJURA', 'ABJURE', 'ABJURE']
bonjour, merci de jouer à motus en python
ABIMEE
VOUS AVEZ 6 ESSAIS
Mots déjà proposés : []
Réponse courante : ------
Entrez une proposition de mot : ABIMER
Solution
['A', 'B', 'I', 'M', 'E', '_']
Entrez une proposition de mot : ABERRE
Solution
['A', 'B', '_', '_', '_', 'E']
Entrez une proposition de mot :
Il ne rajoute pas les lettres écrites précedements .
Bon juste pour dire que ce poste est terminé , mon programme n'est pas vraiment achevé , j'étais censé avoir une aide du forum , et à pars Olygrim , je n'ai eu que des critiques non constructives, qui n'ont rien apporter à mon programme . Je pense qu'on était dans un forum , je ne sais pas si c'est le changement d SiteduZero à OpenClassrooms qui à fait changer les gens . Mais je ne me suis pas senti aidé , j'ai plus l'impression que j'ai perdu mon temps à posté des postes pour rien . C'est comme même décevant quand on c'est d'ou vient Openclassrooms au départ ...
Bon juste pour dire que ce poste est terminé , mon programme n'est pas vraiment achevé , j'étais censé avoir une aide du forum , et à pars Olygrim , je n'ai eu que des critiques non constructives, qui n'ont rien apporter à mon programme . Je pense qu'on était dans un forum , je ne sais pas si c'est le changement d SiteduZero à OpenClassrooms qui à fait changer les gens . Mais je ne me suis pas senti aidé , j'ai plus l'impression que j'ai perdu mon temps à posté des postes pour rien . C'est comme même décevant quand on c'est d'ou vient Openclassrooms au départ ...
Tu ne voulais pas une aide, tu voulais qu'on fasse le travail à ta place et en récupérer toute la gloire et cela gratuitement. Si tu voulais à coup sûr réussir, il suffit de payer un développeur...
Nous notre objectif ici reste pédagogique, et tous ici, ont essayé de te guider et te faire comprendre qu'il faut un minimum se documenter pour comprendre les codes proposés. Tu n'as pas fais l'effort ! Tu es donc le seul responsable, et je pense que si tu es noté sur ce travail, la note sera bien trop élevée par rapport au travail produit.
Ce n'est pas non plus ce qu'on attend des personnes s'inscrivant sur ce forum, désolé de te décevoir, mais effectivement, tu t'es sans doute trompé de forum.
La programmation c'est comme le français: il y a une partie grammaire (la syntaxe) et une partie vocabulaire. Toi tu n'as ni l'un ni l'autre. Il a donc été impossible de communiquer. N'oublie pas qu'un forum c'est avant tout des personnes qui donnent de leur temps pour AIDER. Ça implique (implicitement) un investissement (IMPORTANT) de la part du demandeur. On ne peut rien faire si tu n'as pas un minimum de connaissances
Et d'ailleurs, le meilleur conseil t'a été donné par entwanne lorsqu'il t'a dirigé vers un tutoriel
Bon juste pour dire que ce poste est terminé , mon programme n'est pas vraiment achevé , j'étais censé avoir une aide du forum , et à pars Olygrim , je n'ai eu que des critiques non constructives, qui n'ont rien apporter à mon programme . Je pense qu'on était dans un forum , je ne sais pas si c'est le changement d SiteduZero à OpenClassrooms qui à fait changer les gens . Mais je ne me suis pas senti aidé , j'ai plus l'impression que j'ai perdu mon temps à posté des postes pour rien . C'est comme même décevant quand on c'est d'ou vient Openclassrooms au départ ...
Merci, c'est toujours agréable comme réponse quand on a passé du temps pour s'impliquer dans le sujet.
Tu ne t'es pas senti aidé parce que ce n'était pas de l'aide que tu recherchais, comme l'explique OldProgrammer.
Au fait, le forum n'est pas composé de gens à ton entière disposition.
Bonjour, je n'ai vu que le message que maintenant, vu que c'est les vacances , et avant y a eu le rush de la PREPA , juste pour dire UN BON COURS sur le python , mais si je vais celui d'Open Classrooms c'est bon , non ?
× 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.
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique