开门见山
import pygame,sys
from pygame.locals import *
pygame.init()
DISPLAYSURF=pygame.display.set_mode((400,300))
pygame.display.set_caption('Hello world')
while True:#main game loop
for event in pygame.event.get():
if event.type==QUIT:
pygame.quit()
sys.exit()
pygame.display.update()
import pygame,sys
1|、导入pygame和sys模块,可以在程序中使用这些模块中的函数。2、Pygame所提供的所有处理图形、声音以及其他功能的Pygame函数,都位于Pygame模块中。
from pygame.locals import *
1、使用了from modulename import*的格式,而不是importmodulename的格式。
2、通常,在导入该模块后,使用modulename.functionname()的格式。
3、然而,通过使用from modulename import*,可省略modulename.部分,而直接使用functionname()来调用。
4、pygame.locals使用此格式,是因为此模块中包含常量变量。
pygame.init()
在调用Pygame的所有函数时,都需要先调用该函数。如果出现了类似于pygame.error:font not initialized的一个错误,检查看,是否是该函数忘记调用了。
DISPLAYSURF=pygame.display.set_mode((400,300))
1、调用了pygame,display.set_mode(),返回用于该窗口的pygame.Surface对象。
2、传入两个整数的元组值(300,400):告诉set_mode()函数,宽度和高度的像素值窗口。
3、(300,400)是一个值,而不是传入了两个整数。
4、返回的pygame.Surface对象存储到DISPLAYSURF变量中。
pygame.display.set_caption('Hello world')
设置了在窗口顶部的窗体上显示的文本标题。
while True:#main game loop
1、循环,True表示不会因为该条件而退出,只会因为break退出,或者sys.exit().
2、game loop的作用:1.处理事件。2.更新游戏状态。3.在屏幕上绘制游戏状态。
for event in pygame.event.get():
1、通过调用pygame.event.get()函数,查看创建了哪个时间的代码。
2、返回的Event对象列表,将会按照事件发生的顺序排序。
if event.type==QUIT:
1、Event对象有一个type的成员变量,表示对象表示何种事件。针对pygame.locals模块中
2、每一种可能的类型,Pygame都有一个常量变量。
3、pygame.quit()与pygame.init()为一对相反的函数。运行的代码会使得Python库停止工作。
pygame.display.update()
1、将pygame.display.set_mode()所返回的Surface的对象绘制到屏幕上
2、每次调用该函数,将会重新绘制相同的黑色图像。
运行结果:
啊哈,用的visual stdio 2017运行的python,不过需要安装pygame,如有需要,再看看是否再加点料。
虽然是个非常非常简单的东西,但是就是很开心啊#@-@#
啊,对了,参考书籍《Python和Pygame游戏开发指南》。