我在代码中移动了跟踪器的位置,我看到乌龟被制作出来了,但在那之后它消失了,只有当我向左或向右移动它时才显示在屏幕上,它显示在屏幕上,也显示在屏幕上,但它不会自己向前移动。
请帮助我,我也试过使用chatgpt,但它没有给我一个解决方案。
我已经开始编码近20天,所以我不擅长它。
from turtle import Turtle,Screen
import time
scr=Screen()
scr.setup(600,600)
scr.bgcolor("black")
scr.title("Snake Xenzia")
snakes=[]
sp=[(0,0),(-20,0),(-40,0)]
scr.tracer( 0 )
for i in sp:
snake=Turtle()
snake.shape( "square" )
snake.color( "white" )
snake.pu()
snake.goto(i)
snakes.append(snake)
def lft():
for i in range( (len( snakes ) - 1), 0, -1 ):
new_x=snakes[ i - 1 ].xcor()
new_y=snakes[ i - 1 ].ycor()
snakes[ i ].goto( new_x, new_y )
snakes[ 0 ].left( 90 )
snakes[ 0 ].forward( 20 )
scr.update()
def rit():
for i in range( (len( snakes ) - 1), 0, -1 ):
new_x=snakes[ i - 1 ].xcor()
new_y=snakes[ i - 1 ].ycor()
snakes[ i ].goto( new_x, new_y )
snakes[ 0 ].right( 90 )
snakes[ 0 ].forward( 20 )
scr.update()
def clr():
snake.clear()
snake.home()
scr.listen()
scr.onkey( key="a", fun=lft )
scr.onkey( key="d", fun=rit )
scr.onkey( key="c", fun=clr )
c=True
while True:
scr.update()
for i in range( (len( snakes ) - 1), 0, -1 ):
new_x=snakes[ i - 1 ].xcor()
new_y=snakes[ i - 1 ].ycor()
snakes[ i ].goto( new_x, new_y )
snakes[ 0 ].forward( 20 )
scr.exitonclick()
字符串
1条答案
按热度按时间j7dteeu81#
我已经弄明白了。问题是,我没有使用任何延迟时,每次while循环执行。块走出屏幕,使它看起来像什么都没有发生,只有黑色屏幕显示。
为此,我在while循环中引入了time.sleep(0.1)。通过导入time模块。
字符串