Python简单实现贪吃蛇小游戏
文章目录
- 1. pygame库的简介
- 2. pygame库的安装
- 3. python代码实现贪吃蛇小游戏
- 4. pyinstaller打包成exe
很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:961562169
1. pygame库的简介
PyPoice是SDL多媒体库的Python包装模块。它包含Python函数和类,这些类和类允许使用SDL对CDROM、音频和视频输出、键盘、鼠标和操纵杆输入进行支持。
Pygame是一个利用SDL库的写就的游戏库, 是一组用来开发游戏软件的 Python 程序模块。SDL,全名Simple DirectMedia Layer,SDL是用C写的,不过它也可以使用C++进行开发,当然还有很多其它的语言,Pygame就是Python中使用它的一个库。pygame允许你在 Python 程序中创建功能丰富的游戏和多媒体程序,是一个高可移植性的模块可以支持多个操作系统,用它来开发小游戏非常适合。
2. pygame库的安装
命令行pip安装,换国内源
pip install pygame -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
3. python代码实现贪吃蛇小游戏
利用python的pygame第三方库和面向对象编程的方法,实现简单的贪吃蛇小游戏,还可用pyinstaller打包成exe,方便自己想玩的时候直接点开或者分享给别人。
import pygameimport sys
import random
from pygame.locals import *
class Snake(object):
# 制作背景和蛇、果实的的颜色, 0-255, 0,0,0,是代表黑色, 255,255,255代表白色
def __init__(self):
self.black = pygame.Color(0, 0, 0)
self.red = pygame.Color(255, 0, 0)
self.white = pygame.Color(255, 255, 255)
def gameover(self):
pygame.quit()
sys.exit()
def initialize(self):
pygame.init()
# 定义蛇运动的速度
clock = pygame.time.Clock()
# 定义一个游戏界面
playSurface = pygame.display.set_mode((800, 600))
# 设置界面名字
pygame.display.set_caption("python贪吃蛇小游戏")
# 初始化变量
snakePosition = [80, 80] # 贪吃蛇起始位置,前面的参数数水平方向的距离,后面的参数是垂直方向的距离
# 贪吃蛇的长度,设定为方块的三百,每个方块的长度为25
snakebody = [[80, 80], [60, 80], [40, 80]]
targetPosition = [200, 400] # 方块的初始位置
targetflag = 1 # 定义一个标记,目的用来判断果实是否被吃掉
direction = "right" # 初始化运动方向
changeDirection = direction # 改变方向变量
self.main(snakebody, targetPosition, targetflag, direction, changeDirection, snakePosition, playSurface, clock)
def main(self, snakebody, targetPosition, targetflag, direction, changeDirection, snakePosition, playSurface, clock):
while True:
# 用循环来获得pygame中的所有事件
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
# 创建一个键盘的事件
elif event.type == KEYDOWN:
# 判断键盘的方向
if event.key == K_RIGHT:
changeDirection = "right"
print("向右")
if event.key == K_LEFT:
changeDirection = "left"
print("向左")
if event.key == K_DOWN:
print("向下")
changeDirection = "down"
if event.key == K_UP:
print("向上")
changeDirection = "up"
# 判断是否按下了esc键
if event.key == K_ESCAPE:
pygame.event.post(pygame.event.Event(QUIT))
# 判断蛇的方向
if changeDirection ==
以上是 Python简单实现贪吃蛇小游戏 的全部内容, 来源链接: utcz.com/z/531138.html