1.6 回到Game Over程序
到目前为止,读者已经通过IDLE运行了Game Over程序的第一个版本。在编写程序的过程中,通过IDLE运行一下当然是可以的。但用户肯定还希望自己的产品能像电脑中其他程序那样运行:用户只需双击图标就能启动程序。
如果试图用这种方式运行前面写的那个Game Over程序的话,将只会看到一个一闪而过的窗口,甚至可能会认为它根本就没运行。而实际上它确实运行过了,只不过速度太快,看不清楚而已。程序运行之后,先显示一个Game Over,然后马上就结束了,一切都发生在眨眼之间。所以,这个程序所需要的就是一种能够保持控制台窗口打开状态的办法而已。
新版的Game Over程序(本章项目的最终版)能够保持窗口的打开状态,于是用户就能看到它显示出来的消息了。在显示出Game Over之后,程序还会显示出一条消息“Press the enter key to exit”。只要用户按下Enter键,程序就会退出,控制台窗口也随之消失。
下面将一段一段地对代码进行讲解。该程序可以在配套网站www.courseptr.com/downloads上找到,位于Chapter 1文件夹中,其文件名为game_over.py。好了,现在自己输入一次,然后运行吧。
在Windows操作系统中,可以直接在IDLE中打开一个Python程序(右键点击文件的图标,然后点击Edit with IDLE)。
1.6.1 使用注释
下面是该程序的前两行:
# Game Over
# 演示print函数
这两行不是拿来给计算机执行的语句。实际上,计算机会完全无视它们的存在。它们叫作注释(comment),是给人看的。注释使用自然语言对程序代码进行说明。注释对其他程序员来说是很宝贵的,因为能帮助他们理解代码。其实注释对程序员自己也是很有用的。当自己没办法一下子想起代码的功能时,它们有助于回想起当初为什么要这么做。
只需加上一个符号(#)就能创建出一条注释。该符号后面的一切内容(同一行内)就成为一条注释了。注释会被计算机无视。注意,在IDLE中,注释是以红色显示的。
最好是在每个程序的开头都加上点注释。比如可以列出该程序的标题和功能等,还可以再加上程序员的姓名以及编制日期等信息(虽然这里没有写这么多东西,但读者可以尝试一下)。
读者可能会想:“为什么要注释?程序是我写的,我当然知道它能干什么。”在写完代码之后的个把月时间里,也许确实还记得住。但是有经验的程序员都知道,一般只要几个月的时间,最初的想法就会记不清了。当打算修改曾经编写的某个程序时,只要有那么一丁点好的注释在,就会觉得生活原来如此美妙。
真相
如果别人需要修改你写的程序,那么注释的作用就更大了。在专业编程领域,这种情况非常多。其实,一个程序员大部分的时间和精力都是花在对现有代码的维护工作上的。程序员经常会被要求去修改别人编写的代码,说不定最初那个程序员已经找不到了,根本就没法去问。所以,良好的注释是非常重要的。
1.6.2 使用空行
严格来讲,该程序接下来的一行是空的。计算机通常会忽略掉空行;这些空行其实也是为了方便人们阅读代码的。空行会使得程序更加易于阅读。通常会把相关的代码行放到一起,然后用一个空行隔开各个代码段。在这个程序中,用一个空行隔开了注释和对print函数的调用。
1.6.3 打印字符串
该程序接下来的一行应该很眼熟:
print("Game Over")
它就是老朋友——print函数。这行代码的功能跟交互模式中的一样,用于显示Game Over。
1.6.4 等待用户
程序的最后一行:
input("\n\nPress the enter key to exit.")
用于显示一段提示信息(即Press the enter key to exit),并等待用户按下Enter键。只要用户按下Enter键,程序就结束了。这是在用户结束应用程序之前保持控制台窗口始终打开的一个不错的小技巧。
正常来说,还得讲讲这行代码究竟都干了些什么。但本书打算吊吊读者的胃口。不好意思,读者要等到下一章才能完整地了解这行代码的相关知识。