Python----贪吃蛇游戏

# -*- coding: UTF-8 -*-
#引入turtle库,制作snake,food的动画
from turtle import *
#引入random库,使food随机出现
from random import randrange
#引入freegames库,这个库中封装了许多元素;我们可以使用正方形元素表示food,snake,用vector这个二维向量表示snake的移动
from freegames import square, vector

#初始化food,snake
food = vector(0, 0)
snake = [vector(10, 0)]
#vector(0,10)表示第一个food的位置在以snake的头为原点,横坐标为0,纵坐标为-10处
aim = vector(0, -10)

#改变方向
def change(x, y):
    aim.x = x
    aim.y = y

#判断snake有没有碰到墙壁
def inside(head):
    return -200 < head.x < 190 and -200 < head.y < 190


def move():
    head = snake[-1].copy()
    head.move(aim)

    #考虑游戏结束的两种情况,head碰到墙壁/头碰到身体
    if not inside(head) or head in snake:
        square(head.x, head.y, 9, 'red')
        update()
        return

    snake.append(head)

    #snake吃到food,下一个food会随机出现在画布的另一个地方
    if head == food:
        pri
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值