Bonjour à tous !
Mon fils vient de se mettre au Python (livre Python pour les kids trouver dans sa bibliothèque au collège)... donc du coup je dois m'y mettre

Le programme est le suivant :
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
 
from tkinter import *
import random
import time
 
class Balle:
    def _init_(self, canvas,couleur):
        self.canvas=canvas
        self.id=canvas.create_oval(10, 10, 25, 25, fill=couleur)
        self.canvas.move(self.id, 245, 100)
 
    def dessiner(self):
        pass
tk = Tk()
tk.title('Jeu')
tk.resizable(0, 0)
tk.wm_attributes("-topmost", 1)
canvas = Canvas(tk, width=500, height=400, bd=0, highlightthickness=0)
canvas.pack()
tk.update()
 
balle=Balle(canvas,'red')
 
while 1:
    balle.dessiner()
    tk.update_idletasks()
    tk.update()
    time.sleep(0.01)
 
tk.update()
Bon pour tout dire je ne comprends pas tout notamment la raison des différents paramètre canvas et le self.canvas=canvas le self.id=canvas le canvas en paramètre, le canvas que l'on crée le canvas qu'on envoie à la classe etc.
Mais là n'est pas l'essentiel. Bref lorsque je fais f5 dans le shell le message suivant apparait :

Traceback (most recent call last):
File "E:\ping_pong.py", line 21, in <module>
balle=Balle(canvas,'red')
TypeError: object() takes no parameters


Bizarre car normalement la classe Balle prend bien deux paramètres
Bref si quelqu'un peu m'aider et m'indiquer où il y a une erreur... merci d'avance !!!