Python 使用 pygame 实现一个简单的动画

简介: 首先安装pygame库:$ sudo pip install pygame测试安装效果:#导入pygame模块import pygame#初始化pygamepygame.init()#创建舞台,利用Pygame中的display模块,来创建窗口screen = pygame.display.set_mode((640,480),0,32)#设置窗口标题pygame.display.set_caption("Hello PyGame")这个时候大家运行就能得到一个窗口但是窗口一闪而过。

首先安装pygame库:

$ sudo pip install pygame

测试安装效果:

#导入pygame模块
import pygame
#初始化pygame
pygame.init()
#创建舞台,利用Pygame中的display模块,来创建窗口
screen = pygame.display.set_mode((640,480),0,32)
#设置窗口标题
pygame.display.set_caption("Hello PyGame")

这个时候大家运行就能得到一个窗口但是窗口一闪而过。

#导入pygame模块
import pygame
#初始化pygame
pygame.init()
#创建舞台,利用Pygame中的display模块,来创建窗口
screen = pygame.display.set_mode((640,480),0,32)
#设置窗口标题
pygame.display.set_caption("Hello PyGame")
while 1:
    for event in pygame.event.get():
    #这段程序大家可能比较费解,实际上是检测quit事件
        if event.type == pygame.QUIT:
            pygame.quit()

实现一个左右滚动的小猫:

image.png

直接上代码:

# 导入pygame模块
import pygame

# 初始化pygame
pygame.init()
width = 844
height = 689
speed = 10
# 创建舞台,利用Pygame中的display模块,来创建窗口
screen = pygame.display.set_mode((width, height), 0, 32)
# 设置窗口标题
pygame.display.set_caption("Hello PyGame")

# 我的cat.png和cat.py文件在同一个文件夹下面
# 所以可以直接这样加载图片的
# laod函数加载图片
cat = pygame.image.load("cat.jpg")
print(cat)
cat_x, cat_y = 0, 0  # 猫的坐标
h_direction = 1  # 水平方向

while 1:
    for event in pygame.event.get():
        # 这段程序大家可能比较费解,实际上是检测quit事件,实际讲课中让学生直接模仿即可,时间足够也可以讲明白
        if event.type == pygame.QUIT:
            pygame.quit()

    # blit函数的作用是把加载的图片放到舞台的(cat_x, cat_y)坐标的位置
    screen.blit(cat, (cat_x, cat_y))
    # 这样就实现了会移动的猫
    cat_x += speed * h_direction
    # 如果猫的坐标超出了640,就让小猫反向
    # 如果猫的坐标小于了0,也让小猫反向,这样就实现了碰到墙壁反弹的效果
    if cat_x > width:
        h_direction = -h_direction
    elif cat_x < 0:
        h_direction = -h_direction
    pygame.display.update()

相关文章
|
9天前
|
开发框架 Python
Python的`pygame`库用于2D游戏开发,涵盖图形、音频和输入处理。
【6月更文挑战第21天】Python的`pygame`库用于2D游戏开发,涵盖图形、音频和输入处理。要开始,先通过`pip install pygame`安装。基本流程包括:初始化窗口、处理事件循环、添加游戏元素(如玩家和敌人)、响应用户输入、更新游戏状态及结束条件。随着项目发展,可逐步增加复杂性。
20 1
|
15天前
|
Python
【Python的魅力】:利用Pygame实现游戏坦克大战——含完整源码
【Python的魅力】:利用Pygame实现游戏坦克大战——含完整源码
|
18天前
|
Linux 开发工具 开发者
Pygame是一个免费且开源的Python库
【6月更文挑战第12天】Pygame是一个免费且开源的Python库
26 3
|
20天前
|
存储 缓存 开发者
如何利用Pygame实现动画效果?
【6月更文挑战第10天】如何利用Pygame实现动画效果?
14 1
|
2天前
|
索引 Python
技术好文共享:用Python的Pygame包做飞行棋
技术好文共享:用Python的Pygame包做飞行棋
|
1月前
|
搜索推荐 数据可视化 Python
Python应用实战,用动画生成冒泡排序的过程
冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
|
15天前
|
Python
Pygame基础3-动画
Pygame基础3-动画
|
1月前
|
存储 定位技术 数据库
【python毕业设计】python基于Pygame的吃金币游戏设计与实现(源码+毕业论文)【独一无二】
【python毕业设计】python基于Pygame的吃金币游戏设计与实现(源码+毕业论文)【独一无二】
|
1月前
|
前端开发 算法 数据库
【python毕业设计】python基于pygame桥牌游戏设计与实现(源码+数据库+毕业论文)
【python毕业设计】python基于pygame桥牌游戏设计与实现(源码+数据库+毕业论文)
|
1月前
|
编解码 人工智能 IDE
【python毕业设计】Python基于Pygame的跑酷游戏设计与实现(源码+毕业论文)【独一无二】
【python毕业设计】Python基于Pygame的跑酷游戏设计与实现(源码+毕业论文)【独一无二】