阁楼里的蓝色朋友——派派遇见Python
第 1 章 阁楼里的蓝色朋友——派派遇见Python
1.1 一个名叫"加班"的夜晚
那是一个星期五的晚上。
派派趴在餐桌上,面前是一盘已经凉透的糖醋排骨,肚子早就不饿了,眼睛却一直盯着墙上的挂钟。八点整。八点三十分。九点整。九点三十分。
"奶奶,妈妈今天又加班吗?"派派问。
奶奶正在沙发上看电视,遥控器按了一下,电视里的人笑成一片,可奶奶的眼睛却有点红。她轻轻叹了口气:"是啊宝贝,你妈妈公司里有一份表,要整理好多好多数字,整理完才能下班。"
派派皱起了眉头。在他的小脑袋里,"加班"这两个字就像一只看不见的小怪兽,每天晚上都会悄悄把妈妈"叼"走。妈妈早上出门的时候,会亲亲派派的额头说"妈妈去打败小怪兽啦";可妈妈回来的时候,常常累得连亲亲的力气都没有了,直接倒在床上呼呼大睡。
"奶奶,妈妈整理的那份表,到底长什么样啊?"派派好奇地问。
奶奶想了想,从茶几下面翻出一张皱巴巴的纸。那是妈妈前几天带回家、又忘了拿走的东西。派派接过来一看,顿时呆住了。
那是一张密密麻麻的表格,里面有日期、有名字、有数字、还有一堆派派完全看不懂的英文单词。整个表格横着看像一排排小房子,竖着看像一根根细面条。派派用手指顺着表格滑了一下,手指都数酸了。
"我的天哪,"派派小声说,"这么多数字,妈妈要数到什么时候啊?"
奶奶摸了摸派派的头:"你妈妈说,这份表里有三百多行数据,要一个一个抄到另一个表里,还不能抄错。错了就要重新来。"
三百多行。派派的心突然"咯噔"了一下。他想起自己数学作业里,那张只有十行的算术题,就已经让他抓耳挠腮了。三百多行?那得抄多久啊!
"奶奶,"派派放下那张纸,眼睛里突然有了一个小火花,"我……我能帮妈妈吗?"
奶奶愣了一下,然后笑了:"派派才上小学二年级,怎么帮妈妈啊?"
"可是,"派派握紧小拳头,"可是妈妈太辛苦了!我不想让她每天晚上都被那只加班小怪兽抓走!"
奶奶被派派这副认真劲儿逗乐了。她想了想,指了指天花板上的那扇小窗户——那是阁楼的小天窗。
"派派啊,"奶奶神秘兮兮地说,"你要是真想帮妈妈,奶奶倒是可以给你指一条路。咱们家的阁楼上啊,藏着一个'老朋友'。你去找它,说不定它能教你一点魔法。"
"魔法?"派派的眼睛一下子亮了起来,"什么魔法?"
奶奶摆摆手:"奶奶也说不清。是你爷爷年轻时候留下的东西,你爷爷以前啊,是个工程师。你去看看吧,反正周末你也没事。"
派派二话不说,放下筷子,噔噔噔跑上了楼梯。他要去找那个会魔法的"老朋友"。
1.2 阁楼上的蓝色闪电
阁楼很矮,派派每次进去都要弯着腰。空气里飘着旧书和木头的味道,角落里堆着几个大纸箱,窗户上蒙着一层薄薄的灰。
派派小心翼翼地走到最里面,他打开手机的电筒,光柱在阁楼里扫来扫去。突然,他看到了一个方方正正的东西——那是一台老旧的笔记本电脑,灰扑扑地躺在一个纸箱上,像一只沉睡的小猫。
"哇!"派派兴奋地叫了一声。
他轻轻把电脑捧出来,用袖子擦掉上面的灰。电脑的外壳是深蓝色的,边角已经磨得发白,键盘上有一个按键掉了盖子。但派派觉得它好酷啊,比爸爸那台银色的电脑酷多了。
派派找到了电源线,插上电,按下了开机键。
"滴——"
电脑发出一声轻微的响声,然后是风扇转动的声音,呼噜呼噜的,像一个正在苏醒的老人。屏幕上先是黑漆漆的一片,然后蹦出几行白字,派派一个也看不懂。
过了大约三十秒,屏幕上突然出现了一个画面。
那个画面让派派一辈子都忘不了——
是一条小蛇!一条蓝色的小蛇!它盘在屏幕的正中央,身体是亮闪闪的宝蓝色,眼睛是黄色的,头上还顶着一片小雪花。它抬起头,看着派派,像是真的能透过屏幕看到派派一样。
更神奇的是,那条小蛇居然动了!它用尾巴卷了卷自己,然后张开嘴,屏幕上竟然跳出了一行字:
``` 你好呀,小朋友!我等你很久啦! ```
派派吓得差点把电脑扔出去。他往后跳了一步,又忍不住凑过去看。那条蓝色小蛇还稳稳地蹲在屏幕上,眼睛笑眯眯的。
"你……你是谁?"派派用颤抖的声音问。
蓝色小蛇的嘴巴一张一合,又跳出一行字:
``` 我是皮皮,一条住在电脑里的魔法小蛇。 我的英文名字叫 Pipi。 我的本名,其实叫 Python(派森), 是世界上最受欢迎的一门"咒语"语言。 ```
派派的小心脏"扑通扑通"地跳。他突然想起奶奶说的话——"阁楼上藏着一个老朋友"。难道就是这条蓝色的小蛇?
"你……你是爷爷的朋友吗?"派派问。
皮皮蛇点点头,屏幕上显示:
``` 你爷爷年轻的时候,是一名工程师。 他用我写了好多程序,帮公司解决了很多问题。 后来他退休了,把我留在了这里。 我在这台电脑里睡了好久好久, 直到今天,你这个小机灵鬼把我叫醒了。 ```
派派的嘴巴张成了 O 形。
皮皮蛇又跳出一行字:
``` 小朋友,你叫派派对吧? 我听见你和奶奶在楼下的对话了。 你想帮妈妈,对不对? ```
派派使劲点头:"对!妈妈每天加班到很晚,我想帮她整理那份乱七八糟的表格!"
皮皮蛇的眼睛弯成了两道月牙:
``` 那你可找对蛇啦! 我虽然不会帮你直接整理表格, 但我可以教你一门魔法—— 学会了这门魔法,你就能让电脑替妈妈干活。 电脑可不会累,也不会抄错数字, 只要你把"咒语"念对,它就乖乖照做。 ```
派派激动得差点把键盘敲坏:"真的吗?快教我快教我!"
皮皮蛇慢悠悠地摆摆尾巴:
``` 别急别急,心急吃不了热豆腐。 在教你魔法之前,我要先告诉你三件重要的事: 第一,魔法叫什么名字; 第二,魔法是怎么来的; 第三,怎么念出第一句咒语。 准备好了吗,派派? ```
"准备好了!"派派斩钉截铁地说。
皮皮蛇满意地点点头:
``` 那我们开始吧! ```
1.3 第一件大事:魔法有个名字
皮皮蛇用尾巴在屏幕上画了一个大大的光环,光环里面出现了三个英文单词:
Python
``` 看到这三个字母了吗? Python,中文读作"派森"。 这个词的本意,是一种生活在非洲的大蟒蛇。 ```
"蟒蛇?"派派惊讶地问,"就是那种能把一头小鹿吞下去的大蟒蛇?"
``` 没错,就是那种大蟒蛇。 不过你放心,我可是一条温和的、喜欢教小朋友的魔法小蟒蛇。 你爷爷当年给我取这个名字, 是因为 Python 这种语言的设计者, 是一个叫做 Guido van Rossum(吉多·范罗苏姆)的荷兰叔叔。 他特别喜欢一个喜剧团体的节目, 那个喜剧团体的名字就叫"Monty Python(蒙提·派森)", 一只飞翔的大蟒蛇就是他们的标志。 ```
皮皮蛇在屏幕上画了一只卡通大蟒蛇,蟒蛇的脖子上还打着领结,看起来怪滑稽的。派派忍不住"噗嗤"一声笑了出来。
``` 于是 Guido 叔叔就给这门语言取名叫 Python。 这是 1991 年的事,到现在已经三十多年了。 三十多年,听起来很长, 但是在计算机语言的世界里,Python 算是一位"年轻人"。 ```
"那 Python 这门魔法……呃,这门语言,到底有什么厉害的地方啊?"派派问。
皮皮蛇的尾巴摇啊摇,屏幕上弹出了一个小小的清单:
``` Python 的三大优点:
1. 简单易学(Simple) Python 的语法非常接近人类说话的方式, 不像有些语言那样满屏都是奇怪的符号。 小朋友只要认得几个英文单词,就能开始念咒语。
2. 万能小帮手(Versatile) Python 能干的事情可多啦:
- 整理表格(你妈妈需要的那种)
- 画画、做动画
- 让电脑玩游戏
- 分析数据、算数学题
- 甚至能让机器人动起来
几乎你想得到的,Python 都能帮忙。
3. 朋友超多(Huge Community) 全世界的叔叔阿姨、哥哥姐姐都喜欢用 Python。 这意味着你遇到问题, 互联网上随便搜一搜,就能找到答案。 ```
派派听得眼睛发光。他突然觉得,Python 这条大蟒蛇,一点都不可怕,反而像一位热心肠的朋友。
"皮皮蛇,"派派小声说,"那爷爷当年是怎么学会这门魔法的啊?"
皮皮蛇沉默了一会儿,屏幕上显示:
``` 你爷爷呀,是个特别有耐心的人。 他一开始也觉得这些代码很难, 但他每天都抽出一点点时间来练习, 慢慢地,就变成了高手。 你也可以的,派派。 只要你肯学,我保证你能学会。 ```
派派用力地点了点头。
1.4 第二件大事:魔法是怎么运转的
皮皮蛇决定先给派派讲一个最重要的概念——编程(Programming)到底是什么。
它在屏幕上画了一幅图:
```mermaid flowchart LR A[人类的想法] --> B[把想法翻译成代码] B --> C[电脑执行代码] C --> D[屏幕显示结果] ```
``` 派派,你看这张图。 人想让电脑帮忙做事,要走四步:
第一步:你脑子里冒出一个想法 (比如说,让电脑说一句"你好")。
第二步:把想法"翻译"成一种电脑能听懂的语言。 电脑其实很笨,它只认识 0 和 1, 也就是"电"和"没电"。 所以我们要用一种特殊的语言跟它讲话。 Python 就是这种语言里的一种。
第三步:电脑收到你写的代码,开始执行。 它执行得飞快,一秒钟能算几亿次。
第四步:电脑把结果"吐"出来, 可能显示在屏幕上, 可能播放一段声音, 可能让一个机器手臂动起来。 ```
派派歪着脑袋想了想:"皮皮蛇,那电脑为什么只认识 0 和 1 啊?"
皮皮蛇用尾巴敲了敲屏幕,屏幕上出现了一个小灯泡的图案,灯泡一会儿亮一会儿灭。
``` 你想想看,灯泡只有两种状态:亮,或者灭。 电脑里的电路也是这样,要么有电流,要么没电流。 科学家用 1 表示"有电流", 用 0 表示"没电流"。 所以电脑的所有思考, 不管多复杂, 最后都要被翻译成一长串 010101 这样的东西。 ```
"听起来好麻烦啊……"派派说。
皮皮蛇笑了:
``` 所以才需要 Python 这样的"翻译官"呀! 你只要写简单的英语句子, Python 就会自动帮你翻译成电脑能懂的 0101。 这就像你跟外国小朋友讲话, 不需要学他家乡的方言, 只要说普通话, 再请一个翻译叔叔帮忙就够了。 ```
派派恍然大悟:"原来 Python 是翻译官啊!"
``` 没错!而且是一个非常聪明、非常勤快的翻译官。 更重要的是,Python 不只是翻译, 它还自带一大堆"小工具", 比如整理表格的工具、画画的工具、算数学的工具…… 你要用的时候,叫它一声,它就过来帮忙。 ```
派派突然觉得,Python 不像一门"魔法",更像一位随时待命的小助手。他忍不住问:"皮皮蛇,那我怎么跟 Python 说话啊?"
皮皮蛇眨眨眼睛:
``` 问得好! 这就要讲到第三件大事了—— 怎么念出第一句咒语。 ```
1.5 第三件大事:第一句咒语
皮皮蛇在屏幕上又画了一个小小的光圈,光圈里出现了一行字:
```python print("Hello, World!") ```
``` 派派,看这行字。 这就是程序员叔叔阿姨们入门时写的第一行"咒语"。 它的意思是:让电脑在屏幕上显示出"Hello, World!"这一句话。 ```
"Hello, World! 是什么意思啊?"派派问。
``` "Hello" 是英文的"你好", "World" 是英文的"世界", 连在一起就是"你好,世界!"。 这是程序员的一个传统, 意思是"我写的第一段代码成功啦,向世界问个好!" ```
"那 `print` 是什么意思啊?"派派指着那个英文单词问。
``` print 这个单词在英文里是"打印"的意思。 不过在 Python 里,它的意思是"显示"或者"说出来"。 你写 print,就是在告诉电脑: "请把括号里的东西,显示在屏幕上。" ```
派派点点头:"那 `print` 后面那个括号,是不是必须要有?"
``` 太聪明了!必须要的。 括号就像一只小碗, print 这个咒语需要"装"一些东西在小碗里, 才知道要显示什么。 括号里面的 `Hello, World!` 两边各有一个引号, 引号的意思是"这是一段文字,不是命令"。 如果少了引号,电脑就会懵掉,不知道你在说什么。 ```
"那如果我写 `print("我是派派!")` 呢?"派派兴奋地问。
皮皮蛇的尾巴甩了甩:
``` 那电脑就会显示"我是派派!"这五个字。 你可以把 Hello, World! 换成任何你喜欢的句子。 比如:
- print("妈妈,我爱你!")
- print("今天天气真好!")
- print("派派要成为 Python 高手!")
```
派派越听越激动,他已经迫不及待想要试试了。
"皮皮蛇!我要怎么让电脑念这句咒语啊?"
皮皮蛇点点头:
``` 别急。 念咒语之前,要先做一件更重要的事—— 把 Python 这位"翻译官",请到你的电脑里来。 没有它,你写了咒语,电脑也听不懂。 ```
1.6 把 Python 请回家:安装指南
皮皮蛇的尾巴在屏幕上画了一扇小门:
``` 欢迎来到"安装 Python"环节。 我们一步一步来,不要害怕。 ```
第一步:去 Python 的官方网站下载安装包。
``` 在浏览器里输入这个网址: https://www.python.org 这是 Python 的"老家"。 进去之后,你会看到一个页面, 上面有一个大大的黄色按钮,写着 "Downloads"。 点一下,就会跳到下载页面。 ```
派派一边听一边用手指在屏幕上比划:"然后呢?"
``` 下载页面会根据你的电脑自动推荐一个版本。 比如你的电脑是 Windows 系统, 它就会推荐一个 Windows 的安装包。 你只要点一下 "Download Python 3.x.x" 这样的按钮, 那个安装包就会下载到你的电脑里。 ```
"皮皮蛇,"派派问,"我看到 3.x.x 是什么意思啊?"
``` 这是 Python 的版本号。 Python 现在有两个大家族, 一个叫 Python 2(已经退休了), 一个叫 Python 3(现在正当年)。 我们要下载的是 Python 3 开头的版本。 具体的数字不用太纠结, 只要看到大数字是 3,就可以放心下载。 ```
第二步:运行安装包。
``` 下载好之后,双击那个安装文件, 会弹出一个安装窗口。 这个窗口的最下面,有一行小字: "Add Python to PATH"(把 Python 加入到 PATH)。 这一行前面有一个小方框, 你一定要记得把它打上勾! ```
"为什么要打勾啊?"派派困惑地问。
``` 因为 PATH 是电脑里的一条"魔法通道"。 勾上这一行, 以后你不管在电脑的哪个角落, 都能直接呼叫 Python。 如果不勾, 你每次都要手动告诉电脑 Python 在哪儿, 那可太麻烦啦。 ```
"勾好了,然后呢?"
``` 勾好之后,点击 "Install Now"(立即安装), 然后就耐心等待。 安装的过程大概需要一两分钟, 你会看到一个进度条慢慢往前走。 等进度条走完,屏幕上会显示 "Setup was successful"(安装成功), 这就说明 Python 已经住进你的电脑啦! ```
第三步:打开 IDLE。
``` 装好 Python 之后,你的电脑里会多出一个新朋友—— IDLE。 IDLE 是 Python 自带的一个"代码练习场"。 你可以把它想象成一个专门写咒语的小本子。 ```
"怎么找到它啊?"
``` 不同系统找法不太一样:
- Windows:在开始菜单里搜 "IDLE"
- macOS:在启动台里找 "IDLE"
找到之后双击打开, 你会看到一个白色的窗口, 里面有一行字: Python 3.x.x (default, ...) >>> ```
"那个 `>>>` 是什么呀?"
``` >>> 是 Python 在跟你打招呼呢, 意思是"我准备好啦,请把你的咒语告诉我吧!" 你看,它是不是很有礼貌? ```
派派笑得前仰后合。
1.7 第一次念咒语:Hello, 派派!
皮皮蛇的尾巴轻轻一动,屏幕上出现了一个清晰的小练习:
``` 来,派派,跟着我一起念。 在 IDLE 那个 >>> 后面, 用你的小键盘,一个字母一个字母地输入: print("Hello, 我是派派!") ```
派派紧张地把手放在键盘上,一个键一个键地按。他按得很慢,生怕按错。
"p——r——i——n——t——"
"对,就是这样。"皮皮蛇鼓励他。
"——(——"H——e——l——l——o——,——空格——我——是——派——派——!——"——)——"
"念完之后,按一下回车键(Enter)。"
派派深吸一口气,按下回车。
奇迹发生了!
屏幕上立刻跳出了新的一行:
``` Hello, 我是派派! ```
派派瞪大了眼睛。他揉了揉眼睛,又看了一遍,那行字还稳稳地蹲在屏幕上,像一个听话的小宠物。
"哇!!"派派激动地叫了起来,"皮皮蛇!它真的听懂了!它真的在跟我说话!"
皮皮蛇眯着眼睛笑:
``` 恭喜你,派派! 你刚刚写下了人生中的第一行代码! 从这一秒钟开始, 你就是一位光荣的"程序员"啦! ```
派派高兴得手舞足蹈,他在椅子上跳了三下,差点把电脑震到地上。他赶紧把电脑扶稳,又盯着那行字看了好一会儿。
"皮皮蛇,我可以再写一句吗?"
``` 当然可以!这是你的练习场,想写多少就写多少。 来试试这几句话: ```
派派按照皮皮蛇的提示,依次输入了下面几行代码,每输入一行就按一次回车:
```python print("妈妈,我爱你!") print("我要帮你打败加班小怪兽!") print("Python 魔法,开始!") ```
屏幕上一行一行地显示出:
``` 妈妈,我爱你! 我要帮你打败加班小怪兽! Python 魔法,开始! ```
派派看着这些字,心里暖暖的。他突然觉得,妈妈此刻虽然不在身边,但电脑屏幕上这些话,就好像是他亲口对妈妈说的一样。
"皮皮蛇,"派派小声说,"等我学得再好一点,我要把这些话都打印在一张漂亮的卡片上,送给妈妈。"
皮皮蛇的尾巴轻轻拍了拍派派的手(当然,是透过屏幕"拍"的):
``` 好孩子。 你爷爷当年学 Python 的时候, 也是用类似的方法,一步一步地练习。 记住这种感觉—— 代码不是冷冰冰的符号, 代码是你和电脑之间的悄悄话。 ```
1.8 皮皮蛇小贴士:什么是 IDE?
派派写了好几句 print 之后,皮皮蛇决定再讲一个重要的概念——IDE。
``` 派派,你知道 IDLE 这个名字是什么意思吗? ```
"不知道。"派派老实地说。
``` IDE 是三个英文单词的缩写: Integrated(集成) Development(开发) Environment(环境