what we will make by the end of the day

Screen Setup and Creating a Snake body
from turtle import Turtle, Screen
screen = Screen()
screen.setup(width=600, height=600)
screen.bgcolor("black")
screen.title("My Snake Game!")
pos = [(0, 0), (-15, 0), (-25, 0)]
segments = []
for i in range(3):
xx = Turtle(shape="square")
xx.color("white")
xx.goto(pos[i])
segments.append(xx)
screen.exitonclick()
animating the Snake Segments on Screen

毛毛蟲前進 - Bing video
#jtime
from turtle import Turtle, Screen
screen = Screen()
screen.setup(width=600, height=600)
screen.bgcolor("black")
screen.title("My Snake Game!")
pos = [(0, 0), (-15, 0), (-25, 0)]
segments = []
for i in range(3):
xx = Turtle(shape="square")
xx.penup()
xx.color("white")
xx.goto(pos[i])
segments.append(xx)
on_game = True
while on_game:
for seg in segments:
seg.forward(3)
# seg.left(90)
# seg.forward(3)
screen.exitonclick()
#ang
from turtle import Turtle, Screen
import time
screen = Screen()
screen.setup(width=600, height=600)
screen.bgcolor("black")
screen.title("My Snake Game!")
screen.tracer(0)
pos = [(0, 0), (-15, 0), (-25, 0)]
segments = []
for i in range(3):
xx = Turtle(shape="square")
xx.penup()
xx.color("white")
xx.goto(pos[i])
segments.append(xx)
on_game = True
while on_game:
screen.update()
time.sleep(0.1)
for seg_num in range(len(segments) -1, 0, -1):
new_x = segments[seg_num -1].xcor()
new_y = segments[seg_num -1].ycor()
segments[seg_num].goto(new_x, new_y)
segments[0].forward(20)
screen.exitonclick()
Create a Snake Class & Move to OOP
main.py
from turtle import Turtle, Screen
from snake import Snake
import time
screen = Screen()
screen.setup(width=600, height=600)
screen.bgcolor("black")
screen.title("My Snake Game!")
screen.tracer(0)
snake = Snake()
on_game = True
while on_game:
screen.update()
time.sleep(0.1)
snake.move()
screen.exitonclick()
snake.py
from turtle import Turtle
STARTING_POSITIONS =[(0, 0), (-20, 0), (-40, 0)]
MOVE_DISTANCE = 20
class Snake:
def __init__(self):
self.segments = []
self.create_snake()
def create_snake(self):
for position in STARTING_POSITIONS:
new_segment = Turtle(shape="square")
new_segment.penup()
new_segment.color("white")
new_segment.goto(position)
self.segments.append(new_segment)
def move(self):
for seg_num in range(len(self.segments) - 1, 0, -1):
new_x = self.segments[seg_num - 1].xcor()
new_y = self.segments[seg_num - 1].ycor()
self.segments[seg_num].goto(new_x, new_y)
self.segments[0].forward(MOVE_DISTANCE)