在实现贪吃蛇游戏时,首先需要使用python内置的turtle模块来实现创建游戏窗体与键盘按键的监听工作,然后使用freegames模块进行贪吃蛇的绘制工作。
- turtle模块
turtle模块是python的内置模块,所以在使用前需要使用import导入该模块。代码如下:
import turtle
(1) 创建游戏窗体可以使用turtle模块中的setup()方法来实现。语法格式如下:
turtle.setup(width=_CFG["width"],height=_CFG["height"],startx=_CFG["leftright"],starty=_CFG["topbottom"])
参数说明如下:
- width:表示窗体的宽度,如果是整数,大小以像素为单位,如果是浮动,则为屏幕的一小部分;默认值为屏幕的50%。
- height:表示窗体的高度,如果是整数,高度以像素为单位,如果是浮动,则为屏幕的一小部分;默认值为屏幕的75%。
- startx:表示窗体显示在屏幕的横向位置,如果为正,则以像素为单位从屏幕左边缘开始,如果为负,则从右边缘开始,如果没有,则水平居中窗口。
- starty:表示窗体显示在屏幕的纵向位置,如果为正,则以像素为单位从屏幕上边缘开始,如果为负,则从下边缘开始,如果没有,则垂直居中窗口。
创建游戏窗体的关键代码如下:
import turtle # 导入绘图海龟模块
turtle.setup(420, 420) # 创建窗体大小
turtle.done() # 停止画笔绘制,但绘图窗体不关闭
(2)通过turtle模块中的onkey()方法可以实现对应键盘中按键的监听工作。语法格式如下:
turtle.onkey(fun,key)
参数说明如下:
- fun:表示需要执行的方法。
- key:该参数为字符串,表示键盘中对应的按键,例如“a”或“space”。
注意:在使用onkey()方法实现键盘的监听时,还需要调用turtle.listen()方法即可实现键盘按键的监听。
实现键盘中上、下、左、右按键监听工作的关键代码如下:
turtle.listen() # 事件监听器
turtle.onkey(lambda: change(10, 0), 'Right') # 按键盘右键,蛇向右走
turtle.onkey(lambda: change(-10, 0