如何同时移动两只乌龟?

时间:2018-10-22 15:54:19

标签: python-3.x turtle-graphics

两只乌龟必须同时移动,以便它们可能会面,但是它们又一个接一个地移动,我不知道该如何改变。 我已经尝试了很多方法,但无法取得良好的结果

first part of the code second and last part of the code

感谢您的回答。

import turtle as ka              
kame=ka.Turtle("turtle")          
schildkröte=ka.Turtle("turtle")   
kame.pensize(3)                  
schildkröte.pensize(3)          
kame.speed(1)
schildkröte.speed(1)
kame.setposition(-200,0)      
kame.setposition(-200,200)      
kame.setposition(200,200)            
kame.setposition(200,0)              
kame.home()                         
import random                       
import math
def is_collided_with(a, b):
    return abs(a.xcor() - b.xcor()) < 10 and abs(a.ycor() - b.ycor()) < 10
def reset():
    kame.penup()
    kame.setposition(random.randint(-50, 50), random.randint(0, 50))
    kame.pendown()
def reset2():
    schildkröte.penup()
    schildkröte.setposition(random.randint(-50, 50), random.randint(0, 50))
    schildkröte.pendown()
    while c:
        x,r=random.randint(-200,200),random.randint(-200,200)
        y,s=random.randint(0,200),random.randint(0,200)
        w,u=random.choice([-200,200,6]),random.choice([-200,200,6])
        z,v=random.choice([0,200]),random.choice([0,200])
        k,l=random.choice(["red","blue","green"]),random.choice(["cyan","pink","yellow"])
        if w!=6:
            if u!=6:
                kame.pencolor(k),schildkröte.pencolor(l)
                kame.penup(),schildkröte.penup()
                kame.setposition(x,y),schildkröte.setposition(r,s)
                kame.pendown(),schildkröte.pendown()
                kame.setposition(w,y),schildkröte.setposition(u,s)
                kame.undo(),schildkröte.undo()
               if is_collided_with(kame, schildkröte):
                    print('Collision!')
                    print('aaaaaaaaaaahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh')
                    reset()
                    reset2()
            else:
                kame.pencolor(k),schildkröte.pencolor(l)
                kame.penup(),schildkröte.penup()
                kame.setposition(x,y),schildkröte.setposition(r,s)
                kame.pendown(),schildkröte.pendown()
                kame.setposition(w,y),schildkröte.setposition(r,v)
                kame.undo(),schildkröte.undo()
                if is_collided_with(kame, schildkröte):
                    print('Collision!')
                    print('aaaaaaaaaaahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh')
                    reset()
                    reset2()

1 个答案:

答案 0 :(得分:0)

老实说,我认为最接近“同时运动”的东西可能是将速度设置为0;像这样:

turtle.speed(0)

这会使乌龟变得如此之快,以至于似乎同时在移动。

希望这会有所帮助。