快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

Python怎么实现贪吃蛇游戏

本篇内容介绍了“Python怎么实现贪吃蛇游戏”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

创新互联建站凭借在网站建设、网站推广领域领先的技术能力和多年的行业经验,为客户提供超值的营销型网站建设服务,我们始终认为:好的营销型网站就是好的业务员。我们已成功为企业单位、个人等客户提供了网站设计、网站制作服务,以良好的商业信誉,完善的服务及深厚的技术力量处于同行领先地位。

游戏动图:

Python怎么实现贪吃蛇游戏

源码

from turtle import *
from random import randrange
from freegames import square, vector

food = vector(0, 0)
snake = [vector(10, 0)]
aim = vector(0, -10)

def change(x, y):
   "Change snake direction."
   aim.x = x
   aim.y = y

def inside(head):
   "Return True if head inside boundaries."
   return -200 < head.x < 190 and -200 < head.y < 190

def move():
   "Move snake forward one segment."
   head = snake[-1].copy()
   head.move(aim)

   if not inside(head) or head in snake:
       square(head.x, head.y, 9, 'red')
       update()
       return

   snake.append(head)

   if head == food:
       print('Snake:', len(snake))
       food.x = randrange(-15, 15) * 10
       food.y = randrange(-15, 15) * 10
   else:
       snake.pop(0)

   clear()

   for body in snake:
       square(body.x, body.y, 9, 'black')

   square(food.x, food.y, 9, 'green')
   update()
   ontimer(move, 100)

setup(420, 420, 370, 0)
hideturtle()
tracer(False)
listen()
onkey(lambda: change(10, 0), 'Right')
onkey(lambda: change(-10, 0), 'Left')
onkey(lambda: change(0, 10), 'Up')
onkey(lambda: change(0, -10), 'Down')
move()
done()
     

运行

复制上述代码到一个 py 为后缀的文件,命名 snake.py.

在文件所在目录打开控制台:运行pip install freegames,然后运行python snake.py

“Python怎么实现贪吃蛇游戏”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


名称栏目:Python怎么实现贪吃蛇游戏
链接分享:http://6mz.cn/article/jejscc.html

其他资讯