Pygame的历史
Pygame是一个利用SDL库的写的游戏库,SDL呢,全名Simple DirectMedia Layer,是一位叫做Sam Lantinga的大牛写的,据说他为了让Loki(致力于向Linux上移植Windows的游戏的一家大好人公司,可惜已经倒闭,唉好人不长命啊……)更有效的工作,创造了这个东东。
SDL是用C写的,不过它也可以使用C++进行开发,当然还有很多其它的语言,Pygame就是Python中使用它的一个库。Pygame已经存在很多时间了,许多优秀的程序员加入其中,把Pygame做得越来越好。
安装Pygame
可以从www.pygame.org下载pygame,选择合适你的操作系统和合适的版本,当然你也可以使用pip安装。
pip install pygame
安装成功后可用下面方法确认有没有安装成功:
>>>importpygame
pygame1.9.4Hellofrom the pygame community. https://www.pygame.org/contribute.html>>>
另外说一下,就产品而言,Pygame更致力于2D游戏的开发,也就是说,你可以用Pygame写一个植物大战僵尸,但是写一个魔兽世界则相当困难……请不要做出鄙夷的目光,底层的东西永远是相通的,而且对于新手而言,从简单的2D入手才是正途。
使用Pygame
模块名 功能
pygame.cdrom访问光驱
pygame.cursors加载光标
pygame.display访问设备显示
pygame.draw绘制形状、线和点
pygame.event管理事件
pygame.font使用字体
pygame.image加载和存储图片
pygame.joystick使用手柄或类似的东西
pygame.key读取键盘按键
pygame.mixer声音
pygame.mouse鼠标
pygame.movie播放视频
pygame.music播放音频
pygame.overlay访问高级视频叠加
pygame.rect管理矩形区域
pygame.sndarray操作声音数据
pygame.sprite操作移动图像
pygame.surface管理图像和屏幕
pygame.surfarray管理点阵图像数据
pygame.time管理时间和帧信息
pygame.transform缩放和移动图像
有些模块可能在某些平台上不存在,你可以用None来测试一下。
if pygame.transform isNone:print 'The transform module is not available!'exit()
Hello Pygame
win平台上已管理员身份运行cmd,执行
python -m pygame.examples.aliens
会有一个Pygame自带的彩蛋小游戏
Hello,world!
import pygame,sys#引入Pygame库
pygame.init()
screen=pygame.display.set_mode((600,400))
pygame.display.set_caption("Hello,world!")whileTrue:for event inpygame.event.get():if event.type==pygame.QUIT:
sys.exit()
pygame.display.update()