现在我们继续我们的上一篇博客,详解hello world程序下半部分:
while True:
这是一个while循环,它有一个True条件,使得程序不会因为求得某个表达式为False而退出主循环,退出的方式只有break,或者sys.exit()(sys.exit()会直接终止程序)。
for event in pygame.event.get()
当用户做了一个动作时,pygame就会创建一个pygame.event.Event来保存用户的动作,也就是我们说的事件。
第二行是一个for循环,它会遍历Event对象的列表。这个列表将按动作执行先后来排列。比如说你按了一个空格键,又点了一下鼠标,则按下空格键将是列表中的第一项,而点击鼠标会是第二项。但假如用户没有做任何事,它将会是一个空列表。
if event.type==QUIT:
pygame,quit()
sys.exit()
Event对象有一个变量type,第一行检测type是否等于QUIT,如果是,程序就会调用第二和第三行的两个函数,pygame.quit()会使得程序停止pygame库的运行,然后再用sys.exit()函数终止程序。
pygame.display.update()
这一行调用了pygame.display.update()函数,它把windowSurface中的对象显示到电脑显示屏上,但Hello World程序中windowSurface对象没有变化,所以程序只会每次绘制出一个黑色屏幕。
执行完这一行,while循环再次从头开始检测,之后我们要学习的函数,是要让它们出现在屏幕上,而不是只有现在一个黑屏。
Hello World解析完成!下一章我们将开始介绍一些pygame的函数,下次再见!