这是我在stackoverflow上的第一篇文章,所以我很抱歉,如果它不完美的清晰。所以,我需要我的CompSci课程的帮助。Tkinter:随机移动一千个点
以下是说明:
在窗口中心初始化1000个点。
- 在每个时间步重复1000次......
- 翻转四面的硬币,然后或移动点上下或左或右 。 - 想法是为1000 点中的每一个独立完成此操作。所以,一点的移动并不影响其他点的移动。
- 在每个点的当前位置绘制一个“点”或1 x 1矩形。
- 附上三个屏幕截图,分别显示早期,中期和晚期发行版。
我已经粘贴下面有什么,我这么远:
这段代码的问题是:它不会显示该点的“移动”。我的导师希望它像动画一样。因为有1000点,而且它们移动了一千次,所以不同“帧”之间的延迟必须很短。
如果有人能帮我做到这一点,我会非常感激。
from Tkinter import Tk, Canvas
from random import randint
d=0
t=0
v=1000
x = []
y = []
for i in range(1000):
x.append(300)
y.append(300)
root=Tk()
canvas=Canvas(root, width=600, height=600, bg="white")#creates the canvas
for l in range(v):
for k in range(t):
for i in range(len(x)):
x[i] += randint(-2,2)
y[i] += randint(-2,2)
for i in range(1000):
canvas.create_rectangle(x[i],y[i],x[i],y[i])
if l < 999:
for i in range(1000):
canvas.create_rectangle(x[i],y[i],x[i],y[i], outline='white')
t+=1
l+=1
canvas.pack()
root.mainloop()
你参加什么样的学校? – lelloman
我参加了一所高中。 – carte
清除画布;移动点;画点;等待33ms;重复。 – JayC