Pygame 概述
Pygame是一个流行的Python库,用于开发视频游戏。它是免费的、开源的、跨平台的简单直接媒体库(SDL)的封装器。Pygame提供的SDL功能的抽象化使得使用Python开发多媒体应用程序变得非常容易。
Pygame最初由Peter Shinners、Lenard Lindstrom、René Dudfield等人于2000年10月开发,最新版本为2.0.1,于2020年12月发布。除了SDL功能外,Pygame还提供其他功能,如矢量数学、碰撞检测、相机和MIDI支持等。Pygame应用程序也可以在基于Android的手机上使用。
环境设置
在任何机器上安装Pygame的最简单方法是使用PIP安装程序,该程序随标准Python发行版一起提供。确保你有最新版本的pip。建议在一个新的虚拟环境中使用以下命令安装Pygame
pip3 install pygame
对于Raspberri Pi,Pygame已经预装在raspbian Linus发行版中。至于在MacOS上的安装,较新的版本需要Pygame 2.0。预建的二进制包可用于许多Linux的口味。它们可以使用各自的软件包管理器工具来安装。
对于Ubuntu,以下是命令 –
sudo apt-get install pygame
对于Fedora,以下是命令–
sudo yum install pygame
也可以编译Pygame的源代码(可在https://github.com/pygame/pygame) ,并在各自的C/C++编译器和Python的 setuptools 库的帮助下安装到所需的操作系统。
为了验证Pygame是否已经成功安装,可以尝试导入pygame包并检查其版本。
(pygmenv) C:\pygmenv>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pygame
pygame 2.0.1 (SDL 2.0.14, Python 3.7.4) 
Hello from the pygame community. https://www.pygame.org/contribute.html
Pygame库由以下模块组成 –
| pygame._sdl2.touch | 用于处理触摸输入 | 
|---|---|
| pygame.camera | 使用摄像头 | 
| pygame.cdrom | 音频光盘控制 | 
| pygame.cursors | 光标资源 | 
| pygame.display | 控制显示窗口和屏幕 | 
| pygame.draw | 绘制图形 | 
| pygame.event | 与事件和队列进行交互 | 
| pygame.examples | 示例程序的模块 | 
| pygame.fastevent | 与来自多线程的事件和队列进行交互。 | 
| pygame.font | 加载和渲染字体 | 
| pygame.freetype | 加载并渲染计算机字体 | 
| pygame.gfxdraw | 绘制图形 | 
| pygame.image | 图像传输 | 
| pygame.joystick | 与操纵杆、游戏手柄和轨迹球进行交互。 | 
| pygame.key | 与键盘一起工作 | 
| pygame.locals | pygame常量 | 
| pygame.mask | 图像掩码。 | 
| pygame.math | 向量类 | 
| pygame.midi | 与Midi输入和输出进行交互。 | 
| pygame.mixer | 加载和播放声音 | 
| pygame.mixer.music | 控制流媒体音频 | 
| pygame.mouse | 使用鼠标工作 | 
| pygame.pixelcopy | 复制一般的像素阵列 | 
| pygame.scrap | 支持剪贴板。 | 
| pygame.sndarray | 访问声音样本数据 | 
| pygame.sprite | 基本游戏对象类 | 
| pygame.surfacearray | 使用数组接口访问表面像素数据 | 
| pygame.test | 单元测试套件包 | 
| pygame.time | 监测时间 | 
| pygame.transform | 对表面进行转换 | 
极客教程