Bonsoir,

Je suis un programmeur tres amateur et il faudrait que je présente mon projet d'isn en fin d'année. Mon projet est un jeu memory et j'ai fait la plus grosse partie du travail avec des amis mais je n'arrive pas a poursuivre.
Je voudrai faire 3 choses:
La premiere supprimer les deux cartes selectionnés si elles sont bonnes.
deuxièmement: si les deux cartes sont fausses les reretourner et changer de joueur
troisièmement: recommencer a jouer après avoir gagné sur le tour précédent. voila mon code s'il vous plait aidez moi j'ai grandement besoin d'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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
from tkinter import *
from random import randint
 
# ----- variables globales ---------------------------------------------------
images = []         # liste qui contient les images
cartes = []         #  liste des différentes cartes
cartes_jouees = []  # liste qui contient les cartes jouées
nb_lignes, nb_colonnes = 5, 4
cartes_gagnees, nb_cartes_jouees = 0, 0
joueur_actuel = 1
nb_joueurs = 2
score = [0,0]
 
 
# ----- Création du canvas --------------------------------------------------------
def creer_canevas(fen, col, lig):
    return Canvas(fen, width=(110*col)+10, height=(110*lig)+10, bg='green')
 
# ----- Images ----------------------------------------------------------------
def charger_images():
 
    nb_images = 21  # l'image no 0 est le dos des cartes
 
    for i in range(nb_images):           # importation des images
        nom = 'im' + str(i) + '.gif'
        monimage = PhotoImage(file = nom)
        images.append(monimage)
    return images
 
# ----- Melange des cartes -----------------------------------------------------
 
def melange_les_cartes() :
 
    nb_cartes = nb_colonnes*nb_lignes                              #le nombre de carte est égal au nombre de carte en abscisse multiplié par le nombre de carte en ordonnée
    maliste = list(range(1,nb_cartes//2+1))*2      #on définit les cartes
    for i in range(nb_cartes):                    #pour i allant de 0 à nombre de cartes
        x = randint(0,nb_cartes-1)         #on choisit aléatoirement une carte se trouvant sur l'axe x sur l'intervalle i à nombre de carte
        y = randint(0,nb_cartes-1)         #on choisit aléatoirement une carte se trouvant sur l'axe y sur l'intervalle i à nombre de carte
        maliste[x],maliste[y]=maliste[y],maliste[x]   #inverse la place des cartes en abscisses et celles en ordonnée
    return maliste
 
 
def initialise(nb_colonnes,nb_lignes,images):
    for i in range(nb_colonnes):
 
        for j in range(nb_lignes):
 
            canvas.create_image((110*i)+60, (110*j)+60, image = images[0])
 
 
def coordonnees(pos):
     x=int((pos-1)%4*110)+60
     y=int((pos-1)//4*110)+60
     return (x,y)
#
 
def position(x,y):
    return x//110+1+4*(y//110)
 
 
def Clic(event):
    global compteur,listpos
    compteur=compteur+1
 
 
    X=event.x
    Y=event.y
 
 
 
    #d'apres les coordonnees on repere le numero de l'image a afficher
    numero=position(X,Y)
    #d'apres le numero on repere les coordonnes du coin sup gauche pour afficher l'image a cette place
    (afx,afy)=coordonnees(numero)
 
    #on affiche l'image de numero correspondant a la liste aleatoire cartealea
    if compteur<3:
        listpos.append(numero)
        canvas.create_image(afx,afy, image = images[cartealea[numero-1]])
 
    else:
        if cartealea[listpos[0]-1]==cartealea[listpos[1]-1]:
            print('gagné')
 
        else:
            (afx,afy)=coordonnees(listpos[0])
            canvas.create_image(afx,afy, image = images[0])
            (afx,afy)=coordonnees(listpos[1])
            canvas.create_image(afx,afy, image = images[0])
 
        compteur=0
        listpos=[]
 
# ----- Programme principal ----------------------------------------------------
 
 
 
fenetre = Tk()
 
Largeur = 450
Hauteur = 550
compteur=0
listpos=[]
 
#la liste images contient les 21 images (dos + 2 fois 10 images)
images=charger_images()
canvas = Canvas(fenetre,width = Largeur, height =Hauteur)
 
#cree une liste aléatoire de 20 nombres entre 1 et 10 apparaissant deux fois
cartealea=melange_les_cartes()
 
#affiche le dos des cartes
 
initialise(nb_colonnes,nb_lignes,images)
 
#lorsque l'utilisateur clique on appelle la fonction Clic, il va falloir changer cette fonction Clic, pour que lorsque l'utilisateur clique deux fois le programme
#soit laisse les images dans le cas ou ce sont les mêmes, soit affiche le "dos"
 
 
canvas.bind('<Button-1>',Clic)
 
 
canvas.pack()
 
fenetre.mainloop()