如何加速python的'turtle'功能并在最后阻止它冻结 [英] How to speed up python's 'turtle' function and stop it freezing at the end
本文介绍了如何加速python的'turtle'功能并在最后阻止它冻结的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我用python写了一个turtle程序,但是有两个问题.
I have written a turtle program in python, but there are two problems.
- 对于较大的数字,它的速度太慢了,我想知道如何加快乌龟的速度.
- 它在完成后冻结,点击时显示无响应"
这是我目前的代码:
import turtle
#Takes user input to decide how many squares are needed
f=int(input("How many squares do you want?"))
c=int(input("What colour would you like? red = 1, blue = 2 and green =3"))
n=int(input("What background colour would you like? red = 1, blue = 2 and green =3"))
i=1
x=65
#Draws the desired number of squares.
while i < f:
i=i+1
x=x*1.05
print ("minimise this window ASAP")
if c==1:
turtle.pencolor("red")
elif c==2:
turtle.pencolor("blue")
elif c==3:
turtle.pencolor("green")
else:
turtle.pencolor("black")
if n==1:
turtle.fillcolor("red")
elif n==2:
turtle.fillcolor("blue")
elif n==3:
turtle.fillcolor("green")
else:
turtle.fillcolor("white")
turtle.bk(x)
turtle.rt(90)
turtle.bk(x)
turtle.rt(90)
turtle.bk(x)
turtle.rt(90)
turtle.bk(x)
turtle.rt(90)
turtle.up()
turtle.rt(9)
turtle.down()
顺便说一句:我使用的是 3.2 版!
By the way: I am on version 3.2!
推荐答案
- 将
turtle.speed()
设置为fastest
. - 使用
turtle.mainloop()
功能无需刷新屏幕即可完成工作. - 使用
turtle.tracer(0, 0)
禁用屏幕刷新,然后在最后执行turtle.update()
- Set
turtle.speed()
tofastest
. - Use the
turtle.mainloop()
functionality to do work without screen refreshes. - Disable screen refreshing with
turtle.tracer(0, 0)
then at the end doturtle.update()
这篇关于如何加速python的'turtle'功能并在最后阻止它冻结的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文