王丽丽
阿派,何许人也?他(她)是上海市世界外国语中学七年级信息科技校本课程“阿派历险记——Python程序设计”中的一个虚拟人物,性别不详,爱好探险。因为Python读作,其第一个音节与圆周率π的读音相同,而π又是一个无限不循环的小数,与Python这种“胶水”语言一样,都有着神奇之处,故取其谐音,设定了“阿派”这一人物,串接起整个Python课程。
我与阿派的结缘始于2016年,当时我正在完善信息科技校本课程之计算思维系列的启蒙课程,要在已有课程的基础上,再增设一门Python课程,这才有了七年级第二学期的“阿派历险记”课程。该课程以Python语言为载体,通过编程实践体验计算思维,并结合信息科技拓展课程和学科活动等多种形式,使整个计算思维系列课程在各年段中递进展开,为将来进一步的计算机学习做铺垫。
:七年级学生虽然已有图形化编程的学习经历,但是对于纯代码编程,仍有一丝本能的畏惧。尤其当课程是面向全体学生开展时,如果采用纯技术教授的传统套路,不免会有部分学生觉得枯燥乏味,甚至难如天书。因此,我结合该年龄段学生的特点,虚构了“阿派”这一人物,以其身份进行一关关的探险,让学生更有代入感,并在探险过程中由易到难地进行Python入门学习。
Python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,于1991年正式公开发行,2002年发行Python 2.x,2008年发行Python 3.x。Python语言的创始人Guido van Rossum毕业于荷兰阿姆斯特丹大学,获得数学和计算机科学的硕士学位,发明Python语言时,他正在荷兰国家数学和计算机科学研究院工作,后移居美国。据说,Guido曾参与一种教学语言ABC的开发,但因为这种语言非开放,因而没有推广成功。于是,在1989 年的圣诞节期间,Guido为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,即Python,作为ABC语言的一种继承,也为了取得更好的效果,Python语言不仅免费,而且还能跨平台。又因为Guido是BBC电视剧《蒙提·派森的飞行马戏团(Monty Python's Flying Circus)》的爱好者,所以选中Python作为这种编程语言的名字。
作为近年来的热门编程语言之一,Python的语法简洁而清晰,并具有丰富和强大的库,因此在各种行业中应用广泛,如常用于Web网站和各种网络服务,以及系统工具和脚本。而且作为“胶水”语言,Python能很方便地将其他语言开发的模块包装起来。像Google、NASA等大型企业的项目中也都大量使用了Python语言。值得一提的是,Python在数据科学领域很有优势,而大数据的兴起和发展更促进了Python的发展。它还被成功地运用到人工智能、机器学习等各种高科技领域中,被程序员誉为“最美丽”的编程语言。
在编写和运行Python代码之前,需要在计算机上安装Python解释器,目前的最新版本是Python 3.6系列,你可以根据自己的计算机操作系统,从Python官网(www.python.org)选择合适的版本,下载Python安装包。安装好Python以后,你的电脑程序中就有了IDLE,全称Pythons Integrated Development Environment,即Python集成开发环境,包括一个能够利用颜色突出显示语法的编辑器、一个调试工具、Python Shell和一个完整的Python 3在线文档集。初学者可以利用它方便地创建、运行、测试和调试Python程序。
:Mac OS X会预装Python 2,Linux的大多数版本也可能预装了Python,但是Windows没有内置任何Python版本,需要自行下载和安装Python。作为初学者,Python IDLE能较好地满足编程和调试的需求。当然,还可以根据需要安装功能更加完备的“专业”编辑器,如PyCharm,它自带了一整套Python语言开发工具,能提高开发效率,不仅提供了语法高亮、Project管理、代码跳转、智能提示等基本功能,而且还提供了一些高级功能,支持Django框架下的专业Web开发,同时支持Google App Engine。
1.来自阿派的第一声问候
启动Python IDLE,进入Python Shell,在提示符“>>>”之后,利用print()函数将括号内的字符串显示在屏幕上。如想让阿派和世界打个招呼,可在括号中输入阿派的问候语,如Hello World!并用一对单引号将输入的字符串进行标注(如图1)。试一试,IDLE Python Shell窗口会自动返回问候语。
在输入代码时,可以按下TAB键自动补全(如图2),IDLE会弹出提示。例如,在提示符后输入“pr”,接着按下TAB键,可以在弹出的列表中进行选择,帮助正确输入这个语句。
:IDLE使用颜色区分代码。例如,内置函数print显示为紫色,而字符串"Hello World!"则显示为绿色,以便阅读和检查语法错误。字符串通常用一对单引号、双引号或者三引号括起来,在使用时基本没有差别。但是三引号用于标注多行字符串,一般可表示大段的叙述性字符串,且可以包含双引号和单引号。双引号则可以包含单引号,且不需要转义。
2.和阿派打个招呼
和人类世界的交往一样,在Python中可以利用input()函数,等待用户在键盘上输入一些文本,以此来詢问对方的姓名(如图3)。尝试在Python Shell的提示符之后输入input(“Whats your name?”),并按下回车键。根据提示输入姓名,input()函数将返回用户输入的文本。
当input括号中的字符串包含单引号时,可以使用双引号将整个字符串Whats your name?括起来,且不需要转义。如果想继续使用单引号来标注字符串,那么需要在字符串中的单引号前使用反斜杠“\”来转义字符(如图4)。两种表示方式的效果相同。
借助变量,将input()函数的返回值赋值给变量name,还可以实现阿派自动与用户打招呼的效果(如图5)。
:为了提高效率,在Windows系统的Python Shell下,按下Alt+P组合键,会显示前一句(Previous)代码,按下Alt+N组合键,显示后一句(Next)代码。在Mac下,为Ctrl+P和Ctrl+N。
以上方法是在Python Shell中逐条输入并运行命令,有利于初学者理解print()和input()函数,但是操作比较繁琐。如果想与阿派相互打招呼,并实现自动运行的效果,可以在IDLE中选择菜单FileNew File,新建一个空白的Python文件,逐行输入需要的语句,并保存文件,扩展名为py(如图6)。其中的“\n”为转义字符,表示换行。
最后,选择Run→Run Module命令或直接按下F5键,运行该程序,产生互相打招呼的效果(如图7)。当然,与阿派的初次见面,你还可以尝试更多互动,如让用户输入年龄、爱好等信息,新增几个变量就可以实现这些效果。
Python Shell还可以作为一个简单的计算器使用,让阿派帮你做数学作业。在提示符之后输入一个表达式。例如,5+2,阿派将自动输出表达式的值7。表达式的语法很直白,算术运算符+、-、*、/分别对应数学符号中的“加、减、乘、除”(如下表)。
还可以为多个对象指定多个变量,实现较为复杂的数学运算(如图8)。
:除了算术运算符,Python运算符还包含比较运算符、赋值运算符、逻辑运算符等。
如果你得到上面的输出,恭喜恭喜!你已经对阿派有了一个初步的了解。如果出错了的话,请按照上面的代码仔细核对你的输入并再次运行程序。现在你就可以轻松地编写、保存并运行Python程序了。另外,需要注意的是Python对大小写是很敏感的,也就是说print和Print是不同的,还要确保每行的第一個字符前不要有空格或Tab,栏目在以后的文章中会解释这点的重要性。