前提・実現したいこと
Jason R.Briggs著の『たのしいプログラミング pythonではじめよう!』
の第13章「Bounce!ゲームを作ってみよう」をやっております。ものに
当たると跳ね返るボールをラケットで打ち返すという内容のゲームを作
っております。
コードを全て書き実行したのですが、エラーがでます。
初心者でどのようなエラーなのか分かりません。
エラーの改善方法を教えていただけませんか?
発生している問題・エラーメッセージ
Traceback (most recent call last): File "c:/Users/kenta/Desktop/python/text/lesson13/ball_totyuu.py", line 41, in <module> ball.draw() AttributeError: 'Ball' object has no attribute 'draw'
該当のソースコード
ここに言語名を入力 python ソースコード from tkinter import* import random import time class Ball: def __init__(self, canvas, color): self.canvas=canvas self.id=canvas.create_oval(10,10,25,25,fill=color) self.canvas.move(self.id,245,100) starts=[-3,-2,-1,1,2,3] random.shuffle(starts) self.x=starts[0] self.y=-3 self.canvas_height=self.canvas.winfo_height() self.canvas_width=self.canvas.winfo_width() def draw(self): self.canvas.move(self.id, self.x, self.y) pos=self.canvas.coords(self.id) if pos[1]<=0: self.y=3 if pos[3]>= self.canvas_height: self.y=-3 if pos[0]<=0: self.x=3 if pos[2]>=self.canvas_width: self.x=-3 tk= Tk() tk.title("Game") tk.resizable(0,0) tk.wm_attributes("-topmost",1) canvas=Canvas(tk,width=500,height=400,bd=0,highlightthickness=0) canvas.pack() tk.update() ball=Ball(canvas,'red') while True: ball.draw() tk.update_idletasks() tk.update() time.sleep(0.01)
試したこと
教科書と見比べたり、当サイトの他の質問と見比べてもわからなかったです。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。