# PythonForKids **Repository Path**: donvon/PythonForKids ## Basic Information - **Project Name**: PythonForKids - **Description**: 《Python For Kids》作者:Jason R. Briggs,2012年出版。一本教小孩子学Pyhon编程的书,同时也适合所有对计算机编程感兴趣的人从零开始学编程。以自己有限的能力翻译一下顺便学习。本人水平不高,能力有限,翻译中有很多不当之处,还请各位看官海涵,如有高手路过且能指点一二更是鄙人之幸。 - **Primary Language**: 其他 - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-11-01 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Python For Kids 作者:Jason R. Briggs,2012年出版。 一本教小孩子爱学Pyhon编程的书,同时也适合所有对计算机编程感兴趣的人从零开始学编程。[豆瓣](https://book.douban.com/subject/6962113/)的介绍说,此书适合10岁以上小孩子学习。下载这个电子书的目的也是想教儿子学习编程。当时,儿子还不到10岁,现在已经10岁两年了,半年前才给他讲了第一章,此后便一拖再拖,没有继续下去。想想还是自己翻译一遍,让他自己学吧。顺道自己也学学Python。无奈水平不高,随便翻翻吧,尽量能让儿子看懂,不懂我再给他讲讲。 第一章已经给儿子讲过,就从第二章开始吧。 本人水平不高,能力有限,翻译中有很多不当之处,还请各位看官海涵,如有高手路过且能指点一二更是鄙人之幸。 # 第一部分 学习编程 ## 第二章 运算和变量 现在,你已经安装了Python并学会了启动Python命令窗口,接下来我们准备做些具体事情了。我们会从简单的计算开始学习然后慢慢的转移到变量的学习。变量是计算机程序中用来保存数据的一种方式,它们可以帮助你写出真正有用的程序。 ### 用Python进行计算 通常,我们想要知道8*3.57得多少,你会用计算器或者用笔和纸进行计算。然而,如何用Python命令行进行计算呢?让我们来试一下! 首先,我们先双击桌面上的IDLE图标,或者从开始菜单应用程序列表点击IDLE图标,如果你使用Ubuntu要从应用程序菜单点击IDLE图标。在窗口的提示符中输入算式: >>> 8 * 3.57 28.56 回车后出现运算结果。注意,在Python中输入乘法运算符的时候要用“*”,而不是用“×”。 让我们来尝试一个更有用的计算怎么样? 假设,你在你们家后院挖到了一个装有20个金币的袋子。第二天,你偷偷的溜进地下室,把所有 的硬币放进了一个存钱罐,存钱罐里不停的发出呲呲声和爆炸声,不一会功夫竟然多吐出了10个金币。以后的每天存钱罐都会吐10个金币,请问一年后你会有多少金币呢? 好,你或许会拿出纸在上面这样写: 10 × 365 = 3650 20 + 3650 = 3670 当然,用计算器或者用笔多这个计算非常简单,但是我同样可以用Python命令行来计算所有的算式。首先,我们先用10个金币乘以一年的天数365天得到3650,然后我们在加上20个金币得到3670。 >>> 10 * 365 3650 >>> 20+3650 3670 现在,如果一只乌鸦发现了你卧室里闪闪的金子,并且每星期都会飞过来偷三个金币,这会怎么样呢?到年底你会剩几个金币?下面就是命令窗口中的算式: >>> 3* 52 156 >>> 3670-156 3514 首先,我们用一年52个星期乘以3个金币,得到156。然后从我们的总金币数里面减去这个数字,最终我们得到3514个金币,这就是到了年底我们所剩的金币数量了。 ### Python运算符 在Python命令窗口中你可以进行加、减、乘、除运算,至于其他的数学运算我们暂时不去研究。Python用来进行数学运算的基本符号我们成为运算符,如下表所示。 | 符号 | 运算 | |--------|:------:| | + | 加 | | - | 减 | | * | 乘 | | / | 除 | 用斜杠用来表示除,是因为它跟分数中的分割线很相似。举个例子,如果你有100个苹果,20个筐,计算每个筐平均能放几个苹果,我们会将100个苹果除以20个筐(100÷20),而在Python命令窗口中应该输入 **100 / 20**。一定要记住它的倾斜方向。 ### 运算的顺序 在编程语言中我们使用括号(圆括号)来控制运算顺序。运算就是使用运算符的任何操作。乘、除的运算顺序要高于加、减运算,这就是说,先执行乘除,后执行加减。换句话说,如果你在Python中输入了一个等式,乘或者除要比加或者减先执行。 举个例子,在下面的等式中,数字30先与20相乘,最后数字5再与他们的运算结果相加。 >>> 5 + 30 * 20 605 这个等式换句话描述就是,“30乘以20的积加5”,结果是605。我们可以用括号将前两个数字括起来改变运算顺序,像这样: >>> (5 + 30) * 20 700 结果是700,而不是605。那是因为括号告诉Python,先算括号里,再算括号外。这个等式可以这样描述“5加30的和乘以20”。 括号可以嵌套。也就是说再括号里面可以再加括号,像这样: >>> ((5 + 30) * 20) / 10 70.0 在这种情况下,Python先执行最内层括号里面的运算,然后是外面一层,最后执行除法运算。也就是说,这个等式可以这样描述,“5加30的和乘以20的积再除以10”。执行的过程是这样的: * 5 加 30 得 35 * 35 乘以 20 得 700 * 700 除以 10 得到最终答案 70 如果我们不使用括号,答案将略有不同: >>> 5 + 30 * 20 / 10 65.0 在这种情况下,30先乘以20(得600),然后600除以10(得60),最后5再加60,结果是65。 ***一定要记住,除非使用括号控制运算顺序,永远是先算乘除后算加减。*** ### 类似标签的变量 在程序设计中,变量是指能够存储信息的一个空间,比如,数字,文本,或者数字、文本列表,等等。用另一种方式来看,变量就像是表示某一样东西的标签。 例如,我们创建一个名为*fred*的变量,我们使用等号(=)来告诉Python这个变量用来标记什么信息。在这里,我们告诉Python,使用变量*fred*来标记数字100(注意,这并不是说另外一个变量不能拥有同样的值): >>> fred = 100 要知道变量标记的是什么值,在命令窗口中 输入 *print* 后面跟 用括号括起来的变量名,像这样: >>>> print(fred) 100 我们还可以告诉Python,让变量*fred*标记其他的数值。举个例子,我们看看如何将变量*fred*的值变为200: >>> fred = 200 >>> print(fred) 200 第一行,我们说变量*fred*标记了数字200.第二行,为了确认修改是否成功,我们查看一下变量*fred*标记的是什么值。最后一行,Python打印结果。 在同一个项目中我们也可以使用多个标签(变量): >>> fred = 200 >>> john = fred >>> print(john) 200 在这个例子中,我们在*john*和*fred*之间使用等号来告诉Python,我们想要*john*这个名字(或者是变量)与*fred*标记一样的内容。 当然,对于变量来说,*fred*或许不是一个非常有用的名字,因为它不能大概的反映出其具体的用途。让我们给变量换一个名字*number_of_coins*,像这样: >>> number_of_coins = 200 >>> print(number_of_coins) 200 这样就很清楚的知道,我们说的是200个金币的事。 变量的命名可以使用字母、数字、下划线( _ ),但是不能使用数字开头。你可以使用单个字母(例如a)也可以使用长句子来命名变量(变量名中间不允许有空格,词与词之间可以使用下划线来分割)。有些时候,如果你想迅速的做一些事情,短的变量名是个很好的选择。变量名应尽量使用有意义的名称(The name you choose should depend on how meaningful you need the variable name to be.)。 现在你知道了如何创建一个变量,下面让我们一起看看如何使用变量。 ### 如何使用变量 还记得我们之前计算金币的算式吗? >>> 20 + 10 * 365 3670 >>> 3 * 52 156 >>> 3670 - 156 3514 我们可以将上面的算式转换成一行: >>> 20 + 10 * 365 - 3 * 52 3514 现在,如果我们将数字转换成变量呢?试着输入以下代码: >>> found_coins = 20 >>> magic_coins = 10 >>> stolen_coins = 3 通过上面的代码,我们创建了三个变量,分别是*found_coins*,*magic_coins*,*stolen_coins*。 那么现在,我们可以将变量代入等式中: >>> found_coins + magic_coins * 365 - stolen_coins * 52 3514 你可以看得我们得到了跟之前相同的结果。但是这有什么意义呢?其实这正是变量的魔力之处。如果你在窗户上粘了一个稻草人,乌鸦害怕了每次只偷走两个金币,情况会怎么样呢?我们现在使用了变量,我们可以简单的赋给变量一个新值,就可以在任何使用该变量的地方得到这个修改后的值。我们可以将*stolen_coins*的值修改为2,像这样: >>> stolen_coins = 2 我们可以通过复制、粘贴上面的等式再次进行计算,就像这样: 1. 在需要复制的文本的开始位置点击鼠标,往后拖知道文本末尾 ![](https://gitee.com/donvon/PythonForKids/raw/master/images/2_1.jpg) 2. 按住**Ctrl**键,再按下**C**键,复制刚刚选中的文本。(以后我们会用**Ctrl-C**这个说法) 3. 点击最后一个命令行(在stolen_coins = 2后面) 4. 按住**Ctrl**键,再按下**V**键,粘贴刚刚复制的文本。(以后我们会用**Ctrl-V**这个说法) 5. 敲回车键,你会看到新的计算结果: ![](https://gitee.com/donvon/PythonForKids/raw/master/images/2_2.jpg) 怎么样?是不是比重新输入一次等式更简单? 你可以试着改变另外一个变量,通过复制(Ctrl-C),粘贴(Ctrl-C)上面的算式就会看到改变后的结果。。比如说,如果你能在适当的时候摇晃一下存钱罐,它每次就会多吐出3个金币。你会发现到了年底你就能收获4661个金币: >>> magic_coins = 13 >>> found_coins + magic_coins * 365 - stolen_coins * 52 4661 当然,变量在这种简单的算式中的应用仅仅是其冰山一角。我们还没有接触到真正的应用。现在,你只需要记住变量是标记事物的一种方法,以便于你以后使用它们。 ### 你学到了什么 在这一章你学习了如何使用Python运算符进行简单的算数计算,还有在算数计算中如何使用括号来控制计算的顺序。我们还创建了变量来标记数值,并且在计算中使用它们。