在Python的窗口中重复功能

时间:2017-04-12 21:41:19

标签: python timer turtle-graphics

如何在窗口中重复此乌龟功能一段时间?此代码以圆形形状绘制正方形,我希望它在完成后重新启动并执行3分钟和30秒。

import turtle
import threading



def draw_square(some_shape):
    for i in range (1,5):
        some.forward(100)
        some.right(90)

def draw_art():
    window = turtle.Screen()
    window.bgcolor("yellow")
    sqr = turtle.Turtle()
    sqr.shape("triangle")
    sqr.color("purple")
    sqr.speed(1.5)
    for i in range(1,37):
        draw_square(sqr)
        sqr.right(10)
    window.exitonclick()

def timed():
    threading.Timer(208.0, printit).start()
    draw_art()

timed()

1 个答案:

答案 0 :(得分:-1)

这是你可以做到的一种方式。在定时功能中,记录开始时间。然后,通过向开始时间添加3分30秒来计算结束时间。

在循环中,您可以在当前时间小于结束时间的情况下继续绘图。

from datetime import datetime, timedelta

def timed():
    start_time = datetime.now()
    end_time = start_time + timedelta(minutes=3, seconds=30)
    while datetime.now() < end_time:
        draw_art()
在python datetime模块上的

Here are some resources,它是任何时间或日期操作的首选模块!