简介

Pygame是跨平台Python模块,专为电子游戏设计,包含图像、声音。建立在SDL基础上,允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚。

安装

sudo pip install pygame

验证

在命令行上输入python,再import pygame, 如果没有报错,说明python安装成功。

示例

下面借用网上的例子展示一下效果,给出《飘雪》的动画效果,背景音乐是陈慧娴那首《飘雪》

#!/usr/bin/env python
#coding: utf-8
#description: 制作下雪特效
#refer: https://github.com/crossin/snippet/blob/master/snow/snow.py
#date:2019-01-08import pygame
import random# 初始化pygame
pygame.init()#可以配上点背景音乐
pygame.mixer.init()
pygame.mixer.music.load('飘雪.mp3')
pygame.mixer.music.play()# 根据背景图片的大小,设置屏幕长宽
SIZE = (1364, 569)screen = pygame.display.set_mode(SIZE)
pygame.display.set_caption("飘雪")
bg = pygame.image.load('snow.jpg')# 雪花列表
snow_list = []# 初始化雪花:[x坐标, y坐标, x轴速度, y轴速度]
for i in range(200):x = random.randrange(0, SIZE[0])y = random.randrange(0, SIZE[1])sx = random.randint(-1, 1)sy = random.randint(3, 6)snow_list.append([x, y, sx, sy])clock = pygame.time.Clock()# 游戏主循环
done = False
while not done:# 消息事件循环,判断退出for event in pygame.event.get():if event.type == pygame.QUIT:done = True# 黑背景/图片背景# screen.fill((0, 0, 0))screen.blit(bg, (0, 0))# 雪花列表循环for i in range(len(snow_list)):# 绘制雪花,颜色、位置、大小pygame.draw.circle(screen, (255, 255, 255), snow_list[i][:2], snow_list[i][3]-3)# 移动雪花位置(下一次循环起效)snow_list[i][0] += snow_list[i][2]snow_list[i][1] += snow_list[i][3]# 如果雪花落出屏幕,重设位置if snow_list[i][1] > SIZE[1]:snow_list[i][1] = random.randrange(-50, -10)snow_list[i][0] = random.randrange(0, SIZE[0])# 刷新屏幕pygame.display.flip()clock.tick(20)# 退出
pygame.quit()

效果截图如下

需要的素材如下:

背景音乐就不提供了。

参考文献

[1].https://my.oschina.net/crossin/blog/1848215

[2].https://www.jb51.net/article/127484.htm

在Ubuntu 16.04.5 LTS上安装pygame模块相关推荐

  1. 在Ubuntu 16.04.6 LTS上安装python3.7和pip3后出现Command '('lsb_release', '-a')' 出错问题的解决方法

    在Ubuntu 16.04.6 LTS上安装python3.7和pip3后出现Command '('lsb_release', '-a')' returned non-zero exit status ...

  2. 在Ubuntu 14.04.5 LTS上安装python模块selenium 3实录

    简介 Selenium是python模块库中一组web自动化测试工具集,提供多种语言的API,例如java,python,ruby,.net等,支持Firefox,Chrome,IE,Safari 等 ...

  3. 在Ubuntu 16.04.3 LTS上安装Go 1.10

    升级Go新版本的原因 目前Ubuntu 16.04.3上最新的二进制Go版本是1.6.2,运行github上的一个大的go项目,发现context包在go版本1.6以上和以下的import方式有差异 ...

  4. 在Ubuntu 16.04.1 LTS上安装ATS 6.2.1 LTS实录

    这篇文档基本上与前一篇CentOS 6.8上面的相同,因为我所有的开发环境都是在Ubuntu上面的 http://blog.csdn.net/tao_627/article/details/56842 ...

  5. 在Ubuntu 16.04.1 LTS上安装XnView Multi Platform图片浏览器0.83

    XnView Multi Platform是一个全平台(Windows, Linux, Mac)下的全能图片工具,类似Windows平台的美图看看,阿香婆图片浏览器等等,效果非常赞,是我在Ubuntu ...

  6. 在Ubuntu 16.04.1 LTS上安装ats 5.3.2

    1.安装依赖包 sudo apt-get install g++ make pkg-config libssl-dev tcl-dev libexpat1-dev libpcre3-dev libmo ...

  7. Ubuntu 16.04.1 LTS上安装电源管理系统TLP

    主页: http://linrunner.de/en/tlp/docs/tlp-linux-advanced-power-management.html https://github.com/linr ...

  8. 在Ubuntu 16.04.6 LTS上升级python 3.5到3.7.3实录

    缘由 我想安装一个python模块you-get,发现只能使用pip3安装,但是我发现我的Ubuntu 16.04.6 LTS上有python3.5,但是没有pip3,也无法成功安装,真是要了我的老命 ...

  9. 在Ubuntu 16.04.6 LTS上升级Go到最新版1.12.5实录

    上一次我在Ubuntu 16.04.3 LTS上从源码安装了Go,当时最新的版本是1.10,参见我之前的博文 https://blog.csdn.net/tao_627/article/details ...

最新文章

  1. TokuDB vs Innodb 基准测试对比
  2. 服务器处理 json 数据
  3. 显卡安装一直循环在登录界面——解决之-T450安装显卡驱动和cuda7.5发现的一些问题...
  4. Qt 数据库操作(二)
  5. kaggle研究生招生(中)
  6. Linux 常用的 命令,移动,创建,删除等
  7. HTTP Status Code(Http状态码)
  8. 性能测试:基础(4)
  9. retext代码高亮_实例简介Markdown格式
  10. CheetahLab:2018中国人工智能报告
  11. c语言图书信息管理系实验心得,C语言图书信息管理系统实验报告.doc
  12. sentaurus学习笔记(一)器件仿真
  13. 伦敦艺术大学创意计算机学院,伦敦艺术大学专业详细设置
  14. 解决同一办公环境局域网下无法添加打印机的情况
  15. 【参考文献】软骨细胞生长培养方法
  16. 第7章 区块链开发平台:超级账本
  17. 英雄与将军进不去一直连接服务器,英雄与将军进不去_英雄与将军载入不进战斗...
  18. Kattis Simon Says
  19. 29个最酷的Firefox About:Config配置参数
  20. laravel的pluck用法

热门文章

  1. python 生成验证码
  2. 2022-2028年中国网络出版产业投资分析及前景预测报告
  3. 高级软件工程的第一次作业:回顾自己本科设计
  4. 打算看的书或正在看的书
  5. python 字符串 转 dict
  6. fopen 中 按文本读写与按二进制读写 实例
  7. [转]Android横竖屏切换解决方案
  8. [推荐]C#快速开发3d游戏工具--Unity3d
  9. SVO学习笔记(一)
  10. python实现三种以上判断条件_Python小课笔记--Python控制流:if逻辑判断