少博士趣学Python(txt+pdf+epub+mobi电子书下载)


发布时间:2021-03-06 21:39:06

点击下载

作者:周安琪

出版社:电子工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

少博士趣学Python

少博士趣学Python试读:

前言

少儿学编程该学什么

在多年的少儿编程教学过程中,我时常会思考这样一个问题:青少年学编程究竟应该学什么?有人说应该让孩子学会编写动画和游戏,让他们从消费者变成创造者;有人说未来科技人才短缺,需要从小培养顶尖的科技人才;有人说要锻炼计算思维能力和解决问题的能力。这些我都非常认同。

但我认为还有一点非常重要,那就是通过学习编程,了解我们这个以科技为核心的世界。我们需要领会计算机是如何快速进行重复性强、计算量大的工作,大范围地解决问题的。因为有了计算机,我们才能研究大量的基因信息,帮助医生治病救人;才能分析来自宇宙的大量数据,对未知世界进行探索;才能有自动驾驶及手机支付,让生活变得更加便捷。就像孩子们小时候会看百科全书了解身边的世界一样,他们也需要了解这个信息世界是如何运作的。同时,我们每天被科技“宠爱”着,依靠算法接收着我们想看的新闻、视频、产品和游戏,作为科技的消费者,我们的行为越来越多地被算法和数据所影响。只有了解它们,才能更清晰地面对这个以数据和科技为核心的世界。

本书特点

在《少博士趣学 Python》中,我希望教给读者的不仅是如何写 Python 代码,更是通过编写有趣的编程项目初识科技背后的故事。我们从简单的例子入手,逐渐增加编程项目的难度,通过不同的练习,思考身边的科技。本书并不是一本 Python 语法大全,Python 语言博大精深,而本书只接触到了冰山一角。

本书介绍了 Python 的许多入门知识,例如基本的语法、模块的使用,以及如何用Tkinter编写大家熟悉的图形化界面程序等。读完本书后,你就可以开始编写强大的程序了!

阅读对象

这是一本编程与科技结合的启蒙书籍,我并不想写一本针对资深极客或程序员的书,而是希望让更多的大朋友和小朋友通过这本书尝试编程。这本书适合:

· 想学编程的小朋友。

· 想教小朋友编程的老师。

· 想教小朋友编程的家长。

· 对科学技术好奇,想在轻松、有趣的环境下探索编程的大朋友。

当然,因为本书面向初学者,所以还有许多知识是书里没有讲到的,比方说制作游戏的Pygame 模块、面向对象的程序设计方式等。我相信一名程序员应具备的能力之一是具有很强的学习能力,毕竟科技每几年都要更新迭代一次,一名好的程序员是有能力和动力去持续学习的。希望你也能够持续不断地学习,不断让自己进步!

如何使用本书

本书的每一章都经过了精心安排,在此建议初学者从头开始按顺序阅读,完成每个练习。另外,希望大家能够大胆尝试,改一改代码,看看修改过后的效果,在实践中学习。希望大

家能够根据自己的创意和想象,编写出有趣的作品,帮助自己和身边的人解决问题。祝愿大家坚持学习,享受编程的乐趣!

本书为练习题提供了参考答案,读者可通过以下网址下载:

http://www.broadview.com.cn/35461

最后,我想特别感谢我的同事刘茗玉,她在我编写本书的过程中给了我莫大的帮助!

作者读者服务

轻松注册成为博文视点社区用户(www.broadview.com.cn),扫码直达本书页面。

· 下载资源:本书提供配套资源文件,可在下载资源处下载。

· 提交勘误:您对书中内容的修改意见可在提交勘误处提交,若被采纳,将获赠博文视点社区积分(在您购买电子书时,积分可用来抵扣相应金额)。

· 交流互动:在页面下方读者评论处留下您的疑问或观点,与我们和其他读者一同学习交流。

页面入口:http://www.broadview.com.cn/35461第1章 编程与我们的生活

本章重点是启发读者学习的兴趣,并对计算机在生活中的优点和缺点有所思考,希望读者带着兴趣和思考学习编程。1.1 为什么学编程1.1.1 通过编程了解以科技为核心的世界

在短短的十几年里,科技让我们以全新的方式生活、工作、娱乐。我们足不出户,便可以买衣服、买水果;我们相隔十万八千里,也可以通过视频面对面说话玩乐;我们可以随时随地找到各种视频、文章、游戏。

计算机能帮我们做重复性强、计算量大的工作。它能帮医生分析病人的大量基因信息,找到合适的疗法;它能帮汽车分析复杂的路况,找到合适的驾驶方案;它能分析我们在互联网上的动作,根据我们的喜好,推荐给我们喜欢读的文章、喜欢听的音乐和喜欢看的视频。

我希望你能通过学编程,了解我们这个以科技为核心的世界。并不是所有人都要成为专业的程序员,但科技已渗透到各行各业,了解和善用科技将至关重要。1.1.2 编程很有趣

你想不想编写出自己的游戏和关卡?

你想不想编写电脑程序或者手机APP?

你想不想制作酷炫的音乐、艺术作品、模型?

你想不想编写个人工智能机器人跟你下五子棋?

你想不想编写个程序自动给你喜欢的歌星投票?

你想不想编写个程序,自动每天早上提醒你今天的雾霾指数?

你想不想……

我相信你有许多妙趣横生的想法,现在我们就用程序将它们变成现实吧!1.1.3 编程能锻炼你的思维能力

编程并不是一件容易的事,我们的程序也经常出错,需要我们耐心解决。编程可以挑战你的思维能力,我们将练习如何寻找规律;如何将庞大的问题分解成许多小问题,依次解决;面对同类问题,如何找寻系统性的解法(算法);面对复杂的问题,如何隐藏不必要的细节,用简单的方式表达问题的核心。

我相信这些思维能力,不仅能用在编程上,也可以用在你生活的方方面面,让你更有效地思考与生活。1.2 为什么学Python

Python简单易懂,接近英语表达且标点符号偏少,适合初学者学习。

Python 有许多强大的库,它的用途也很多,并且在数据处理、人工智能、机器学习方面应用广泛。1.3 如何学好编程

恭喜你!能决定开始学编程,你已经迈出了一大步,要想学好编程,其实很简单,只要做到以下几点。

· 大胆学习新知识,尝试新想法。

· 遇到问题不要着急,慢慢地、一步一步地排查解决。

· 解决问题后,回顾自己学到了什么,还有哪些不足。

· 将你的所学讲出来。

不过,这个世界上最难的事,就是坚持不懈地做好简单的事。祝你坚持自主学习,持续进步!1.4 计算机的长处和不足

在我们学编程之前,我们先打量一下我们的计算机。任何东西,无论是软件系统还是硬件物品,甚至是一幅画、一段乐曲,都有它的优缺点。习惯客观地分析优缺点,能帮助我们更有效地使用和改善它。

前面提到计算机非常有用。计算机有哪些优点,使它如此强大?

· 计算机的计算速度很快,它计算的速度比人类快得多,可以快速处理大量数据。因为它快,才能帮医生分析大量的基因信息、帮企业家分析用户信息、帮自动驾驶系统分析路面信息。

· 计算机很精确,只要给计算机正确的指令,它就能够不出错。有人会说,不是吧,我的电脑经常出错啊!这种情况大多数时候是因为人类给它的数据有问题,或给它的指令有误。如果你给计算机正确的指令,它就会正确地将任务完成。

· 计算机可以重复执行某些任务,你可以让计算机重复执行某些任务千遍、万遍,它也不会抱怨,继续精确地执行着。而换作是人类,你让他重复做一件事,他就会感到无聊和疲惫。

· 计算机可以在危险的情况下工作,比方说我们可以把机器人放到月球上帮助我们采集数据,进行计算。而我们很难让一个人长期住在月球上做同样的工作。计算机有诸多优点,那它的不足又有哪些呢?我可以想到以下两点。

· 计算机会盲目遵守指令,就算是错误的指令,它也会执行,给出错误的答案。

· 跟计算机沟通并不容易,需要学习计算机的语言。

你还能想到计算机的哪些长处和不足?

我们学习编程,就是学习如何善用计算机的长处。如果哪个任务手动完成消耗时间长,重复性高,对精准度的要求高,那我们就用计算机来完成吧。

讨论 人开的车VS自动驾驶

· 你更愿意乘坐人开的车,还是软件系统开的自动驾驶车?

· 你更愿意乘坐连续开车12小时的人开的车,还是软件系统开的自动驾驶车?

· 你更愿意乘坐刚拿到驾照的人开的车,还是软件系统开的自动驾驶车?

结合计算机的长处和不足,讨论你对这三个问题的看法。1.5 下载并安装Python

Python 的官网是 www.python.org,我们可以直接从官网下载 Python。这里介绍在微软Windows和苹果Mac OS两种系统中的安装方式。

如果Python官网页面之后有所更新,那请大家用自己的思维能力和观察力,大胆地尝试,推测如何下载安装,解决问题。1.5.1 Windows系统

进入 https://www.python.org/页面,选择 Downloads,在弹出的菜单中选择 Windows 和Python 3.x.y。我们的例子中是 Python 3.6.4。不同的数字代表不同的 Python 版本。需选择3开头的版本,后面两位数字并不重要。

下载Python:在Python官网中选择【Downloads】→【Windows】→【Python 3.6.4】,如图1-1所示。图1-1 Python官网下载

下载好后单击文件,选择Install Now,根据提示安装。记住在这里要勾选Add Python 3.6 to PATH,如图1-2所示。安装好后,打开Windows的开始菜单,找到IDLE程序。打开IDLE后,Python的Shell窗口会弹出,如图1-3所示。准备就绪,可以翻到本书1.6节了解如何在Shell里编写代码。图1-2 Windows系统安装Python图1-3 Python IDLE页面1.5.2 Mac OS系统

如果你使用苹果电脑的 Mac OS 系统,下载时,请进入 https://www.python.org/页面,选择Downloads,在弹出的菜单中选择Mac OS X和Python 3.x.y。我们的例子是Python 3.6.4。不同的数字代表不同的 Python 版本。需选择 3 开头的版本,后面两位数字并不重要。

下载 Python:在 Python 官网中选择【Downloads】→【Mac OS X】→【Python 3.6.4】,如图1-4所示。图1-4 Mac系统安装Python

下载好后打开文件,根据提示安装。安装成功后,找到IDLE程序并打开Shell窗口,如图1-5所示。图1-5 Mac系统的IDLE页面1.6 在Shell里编写代码

Python Shell 窗口自带交互功能,可以在其中直接输入Python代码运行。例如,在 Shell窗口的3个箭头旁输入指令2+3,按回车键,Python自动计算出答案5,如图1-6所示。图1-6 在IDLE输入指令

我们再尝试几个例子。

在Shell窗口里输入:“Hello,world”这句话会打印出来,如图1-7所示。“Hello,world”是许多人在学习编程时编写的第一行代码,广泛流传成为经典。print()是 Python 的打印函数,表示要打印出括号里的内容,在后面的章节里我们会经常使用print()打印。

在编写程序时,要注意所有的 Python 标点符号比如引号“”、括号()都要用英文输入法,否则系统就会报错。另外,如果要找回之前的代码,只需要使用“Alt+P”组合键,就能自动补全之前打过的命令。图1-7 在IDLE里打印“Hello,world”

尝试在Shell窗口里输入:

注意,第二行要缩进,也就是说 print 前面需留有空格。事实上,只要第一行结尾处有冒号:在按下回车键后,Shell 窗口会自动空格。如果没有自动缩进,也可以手动敲两下或四下空格键缩进。编写完print(″=^.^=″)后,按下回车键两次,结束编辑,Shell窗口将打印10次小猫笑脸=^.^=,如图1-8所示。图1-8 在IDLE里打印笑脸

在Shell中编写程序会很麻烦。例如,假设想打印100个笑脸,而不是10个,就需要重新写出这两行代码,十分不便。这时候就要请编辑器出场了。1.7 在编辑器里编写代码

要想认真写代码,我们需要修改和存储功能,这就要依赖功能更加强大的编辑器了。

在Shell 窗口里,点击左上角菜单中的File,选择New File,一个空白的编辑器窗口就打开了。

打开编辑器:Shell窗口【File】→【New File】,在编辑器里输入下面的代码。

输入完后点击 File,选择“Save As…”,给 Python 代码文件起个名字,比方说“cat”,找到你想要保存的文件夹,比如桌面,选择保存。完成后一个名为 cat.py 的 Python 文件就保存在了你的桌面上,如图1-9所示。

我建议大家新建一个文件夹,专门存储你的Python学习文件,方便整理和回顾。

保存文件:编辑器窗口【File】→【Save As…】。

完成后,我们的文件标题变成了cat.py,后面是这个文件的地址。图1-9 在Python的编辑器里编写程序

一切准备就绪,可以运行了,我们只要点击 Run,选择 Run Module,我们的 Shell 窗口就会运行代码,打印出100个小猫笑脸=^.^=。

运行Python文件:编辑器窗口【Run】→【Run Module】

大家在编写的时候,可将两个窗口并排摆放,方便编辑和测试,如图1-10所示。图1-10 并排摆放Python编辑器和Shell窗口

之后若要打开Python文件,只要在Shell窗口或者编辑器窗口点击File,选择Open,找到想要打开的文件即可。

打开Python文件:Shell窗口或编辑器窗口【File】→【Open】。

我们示范的是Python自带的IDLE软件。事实上,市场上有多个可用来编写Python的编辑器。各有优缺点。我们推荐的编辑器包括:

· 线上编辑器Repl.it:https://repl.it/languages/python3

· Python编辑器PyCharm

· 编辑器Sublime

大家感兴趣的话,可以探索这些编辑器,测试上面的3个例子,感受一下它们的优缺点。1.8 五颜六色的代码

编辑器里的代码有多种不同的颜色,帮助我们读、写代码。每个编辑器的配色方案略有不同。所以如果你的代码颜色和我的不一样,不用担心。

但同一类型的代码颜色应该是一致的,比方说数字的颜色一致,引号包围的字符串颜色也应一致。如果有区别,可以根据提示检查代码是否出错。1.9 帮助我们的提示信息

就算是“大牛”程序员写出的代码也会出错。出错不要紧,我们的程序会给出提示。在图 1-11的例子里,程序告诉我们问题出在第二行,priint有问题呢!仔细看看,print确实多写了一个i。纠正过来就好了。图1-11 通过Python的报错提示找到代码中的问题

有了 Python 的提示,就算遇到 bug 程序报错,也不用担心,耐心纠错就好。毕竟,自己动手解决问题是快速学习新技能的不二法宝。第2章 Python编程初体验——发号施令

本章重点是让读者了解编程就是精确地发号施令,通过Python turtle感受简单的指令,熟悉Python代码。2.1 什么是编程

编程是用计算机的语言,精确地给计算机发号施令,让它去完成某一件任务。

这些精确的指令,就是算法(algorithm)。有的算法可以帮我们给数字排队、有的算法可以做数学科学计算、有的算法可以美化图片、有的算法可以规划最短路线……

在什么情况下,使用什么算法,则是计算机世界的精髓。而把算法变成计算机的语言写出来,让计算机去执行,这就是编程。2.2 给小海龟精确地发号施令

我们先跳过Python的语法,学一学如何精确地发号施令。

Python 有一个海龟库,又称海龟模块,用于制作有趣的图形。库里有只完全听指挥的小海龟,我们只要给它编程发号施令,它就会跟着指令画画。2.2.1 指挥海龟画正方形

实例

我们先从简单的任务开始,指挥小海龟画个正方形,如图2-1所示。图2-1 Python海龟绘制正方形

打开IDLE编辑器,新建Python文件(Shell窗口:【File】→【New File】),给文件起个有意义的名字,保存到你的Python学习文件夹里(编辑器窗口:【File】→【Save As…】)。

若要调用海龟模块,首先需要编写 import turtle,然后用 turtle.Pen()让海龟现身,给它起个名字,我的海龟就叫tony,你可以给你的海龟起其他任意名字。

尝试运行这两行代码,小海龟现身了,但我们并没让它做其他的任务,所以它现完身程序就结束了。要想让小海龟画正方形,我们可以先思考它的算法是什么,然后编写出来。

确定好算法,我们可以开始编写程序。下面是一系列可以给小海龟下的指令。

我们用tony.forward(100)和tony.right(90)为指令,组合出让小海龟画正方形的程序。

画正方形

点击【Run】→【Run Module】执行程序,就可以看到图2-1中小海龟画的正方形了。2.2.2 指挥海龟画八边形

实例

根据画正方形的经验,尝试画如图2-2的正八边形。图2-2 Python海龟绘制八边形

程序员通常比较懒,但这种懒有好处,他们总在寻求以最快的方式完成任务,提高效率。为了不用重新写代码,程序员们可是想了许多种办法,后面我们会一一了解。能够在过去的解法里找出规律,套用到新的问题上,是一个重要的技能。让我们根据画正方形的解法,画八边形。首先,我们可以思考一下画八边形和正方形的主要区别,比方说旋转的角度有什么区别?

画八边形的解法和正方形基本类似,主要区别如下:

· 旋转的角度不同,需从90度改成45度

· 要画8条线,画线和旋转的次数从4次变成8次

基于正方形的代码,我们只要针对上面的区别修改一下就可以画出八边形。

下面就来尝试一下画正八边形吧!

画正八边形1

写好代码后点击【Run】→【Run Module】测试程序。2.3 省力气的循环

我们八边形的代码中有许多重复的地方。tony.forward(100)和 tony.right(45)各重复了 8 次。聪明而懒惰的程序员们希望减少重复的代码。电脑的一大优点就是能帮我们完成重复性很高的工作,重复写同样的句子多没效率呀。因此,程序员们设计了循环语句,帮我们自动重复某些指令。

参考下面的代码,使用 for 循环,让 tony.forward(100)和 tony.right(45)这组动作自动重复8次。(我们将在第7章详细讲解循环语句。)

画正八边形2

我们的代码越来越复杂,许多代码前面有空格,这个空格叫“缩进”。可以通过按 4 下空格键进行缩进或者点击 Tab 键进行缩进。同样缩进的代码为一组,我们称这些组合在一起的代码为“代码块”。

在大段的代码里,我们将使用箭头→表示缩进。一个箭头→表示一级缩进,两个箭头→→表示二级缩进。

小贴士:循环语句

i、j、a 都是变量,用于存储数据。有关变量的详细内容请参考第 4 章,有关循环的详细内容请参考第7章。

写好代码后点击【Run】→【Run Module】测试程序,效果应和前面介绍的八边形一致。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载