如何在Python中控制Turtle動畫的速度
在Python的Turtle庫中,動畫的速度常常被認為太快。本文解決了這個問題,提供了修改後的程式碼片段,將動畫速度調整為更易於管理的速度。
提供的程式碼使用 tracer() 方法關閉自動螢幕更新,從而允許手動控制刷新速度。然而,它使用 while True: 循環來實現恆定動畫,這可以導致快速執行。
為了解決這個問題,修改後的程式碼將 while True: 替換為 screen.ontimer() 事件函數。此函數安排重複事件,具有可配置的延遲(以毫秒為單位),刷新螢幕並推進動畫。
這是更新的程式碼:
<code class="python">import turtle from turtle import Screen, Turtle def rectangle(t): t.forward(50) t.left(90) t.backward(5) t.pendown() for _ in range(2): t.forward(10) t.right(90) t.forward(120) t.right(90) t.penup() def windmill(t): for _ in range(4): t.penup() rectangle(t) t.goto(0, 0) screen = Screen() screen.tracer(0) turtle = Turtle() turtle.setheading(90) def rotate(): turtle.clear() windmill(turtle) screen.update() turtle.left(1) screen.ontimer(rotate, 40) # adjust speed via second argument rotate() screen.mainloop()</code>
透過調整第二個參數(以毫秒為單位)到ontimer(),可以修改動畫的速度。較低的值會導致較慢的動畫,而較高的值會導致較快的動畫。
以上是如何在Python中減慢你的海龜動畫:用'screen.ontimer()”替換'while True:”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!