【Python】Pygame入门

【Python】Pygame入门_第1张图片

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

安装成功后可用下面方法确认有没有安装成功:

>>>import pygame
pygame 1.9.4
Hello from 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 is None:
    print 'The transform module is not available!'
    exit()

Hello Pygame

win平台上已管理员身份运行cmd,执行

python -m pygame.examples.aliens

【Python】Pygame入门_第2张图片

 

 会有一个Pygame自带的彩蛋小游戏

【Python】Pygame入门_第3张图片

Hello,world!

import pygame,sys#引入Pygame库

pygame.init()
screen=pygame.display.set_mode((600,400))
pygame.display.set_caption("Hello,world!")

while True:
    for event in pygame.event.get():
        if event.type==pygame.QUIT:
            sys.exit()
    pygame.display.update()

【Python】Pygame入门_第4张图片

 【Python】Pygame入门_第5张图片

 

 【Python】Pygame入门_第6张图片

 【Python】Pygame入门_第7张图片

 

 【Python】Pygame入门_第8张图片

 

 【Python】Pygame入门_第9张图片

 

 【Python】Pygame入门_第10张图片

 

 【Python】Pygame入门_第11张图片

 

 【Python】Pygame入门_第12张图片

 

 【Python】Pygame入门_第13张图片

 

你可能感兴趣的:(【Python】Pygame入门)