Python编程自学手册(txt+pdf+epub+mobi电子书下载)


发布时间:2020-07-14 22:58:01

点击下载

作者:史向东 等

出版社:电子工业出版社

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

Python编程自学手册

Python编程自学手册试读:

前言

从2017年开始,我带着刚上五年级的夏启恒同学学习Python语言,那时候,夏启恒在计算机语言方面的基础为零。经过一年时间的学习,他很快掌握了Python语言的基本技巧,从入门的基本语句到主要算法,再到分词等复杂应用。2018年9月,全国计算机等级考试(NCRE)第一次组织Python程序设计二级考试,夏启恒顺利通过。在与夏启恒的共同学习中,我发现Python语言特别适合青少年或者计算机初学者学习。

许多家长问我,孩子到底应该怎样学编程?有的学生从积木式编程开始,有的学生从代码编程入门,还有的学生挑战各类比赛。我很难说哪种方法最好,但我始终觉得大部分程序员走过的路是不会错的。回想当年我学习编程的过程,从GW-Basic开始,一行行代码、一段段算法是最让人入迷的;从面向过程的编程到面向对象编程的思维转换,也是最让人沉醉的。于是,我在与小学生的学习交流中,努力让他们从一开始就从代码入门,然后从基本语法再到能够提高兴趣的应用实现。

本书特点

本书通过胖胖老师讲授,欢欢、乐乐学习的情境模式,将Python的基本语法、数据库以及简单的应用开发等知识串为一体,使读者能够在读完本书后,具备自学Python的能力、简单的应用开发能力,以及基础的算法实现能力。

本书适合于希望学习编程的中小学生(9~18岁最佳)、零基础的Python入门者以及一些想参加全国计算机等级考试(NCRE)Python程序设计二级考试(本书后面简称二级考试)的人,也适合于Python编程教学机构、学校作为教学参考教材。

阅读方法

本书使用的学习环境为Windows操作系统以及Python 3.6.8,共分为以下三个部分。

第一部分为基础篇,共15节课,主要从数据的输入输出、变量、数值运算、基本语句等几个方面讲解Python的基本语法。如果你已经对这一部分有所了解,则可以快速浏览或者直接跳过。

第二部分为进阶篇,从第16节到第29节,从函数学习入手,讲解函数、类,并引出面向对象的编程思想;然后对Python中的序列,包括列表、元组、集合、字典进行详细讲解;最后学习Python中库的使用及文件操作方法。前两部分的内容与全国计算机等级考试(NCRE)Python程序设计二级考试(本书后面简称二级考试)的大纲要求是一致的。如果你对二级考试有兴趣,则可以再加入一些练习题,为二级考试做准备。

第三部分为应用篇,从第30节到第36节。由于学习编程的主要目的还是应用,因此本篇也是本书学习的主要目的。从数据库入门,以学生成绩统计系统为例讲解了GUI编程,以个人主页为例讲解了Web程序开发。

本书资源

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

• 下载资源:本书提供的示例代码及资源文件,均可在“下载资源”处下载。

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

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

页面入口:http://www.broadview.com.cn/38443

本书利用青岛大学的开源项目OnlineJudge搭建了GeekMen在线练习平台。我们已经将本书中绝大部分的例题与练习题上传到该平台。

由于作者水平有限,书中难免会出现一些错误,恳请广大读者批评指正。您在阅读过程中,如果产生疑问或者发现Bug,欢迎给我们发送邮件,邮箱地址为:admin@0day.net.cn。

致谢

特别感谢夏启恒同学,他的学习过程给了我创作的灵感;感谢作者曹剑、张敏、邓贵勇等;感谢李泽洋对部分绘图和排版工作做出的贡献;最后,感谢冯翔教授在百忙之中为本书写序。

谨以此书献给我的读者以及热爱编程的朋友们。史向东2019年8月于南京第一部分基础篇第1节编程如此简单

2016年11月的一天,胖胖老师和几个小学生坐在一间教室里聊计算机。胖胖老师问大家:“你们学过计算机吗?”

于是,这些小学生的计算机课就从那天开始了。经过不到两年的学习,2018年9月,其中五年级的夏启恒同学顺利拿到了国家计算机等级考试(Python程序设计)的二级证书。1.1 程序是什么

近几年,在中国有关青少年编程的课程多种多样,有积木拼插类的,还有游戏兴趣类的,但不管是何种编程方式,对于计算机来说,最终都是一句句的代码。1 print(" **")2 print(" ****")3 print(" *******")4 print(" *********")5 print(" ***********")6 print(" **")7 print(" **")8 print("****")

计算机在执行以上Python语句后,就会在屏幕上显示一面小旗子(图1-1),这就是一段程序。图1-1 小旗子

我们再来看生活中的一个例子。在每天上学前,乐乐都要做以下准备再出门。这里的三个步骤就是乐乐同学上学前的准备程序。程序是指完成某些任务的一种既定方式和过程,也指一系列有序动作的执行过程。与此相同,计算机程序是计算机完成一系列有序动作的过程,即执行某些操作或者解决某个问题而编写的一系列有序指令集合。

人与人之间通过语言进行信息传递,比如有的人说汉语、有的人说德语。同样,计算机也是通过计算机语言传达指令的。计算机语言通常分为三类:1.2 程序的执行

英语、汉语、德语、法语等都是人与人之间交流的语言。如果我们用汉语写一篇文章(或者一段话),就可以让一个能读懂汉语的人进行阅读、理解并做出相应的动作。

欢欢在读这段文字时,每读一句就会记忆到大脑中,并且每天到了早上6点半就开始按照上面的要求执行。

在上面的例子中,汉语就是语言。欢欢在读的过程中,把每条语言转换成自己的理解存在了大脑中,最后按要求进行上学前的准备。计算机在执行程序时,也是类似的过程。对于不同的计算机语言,这个过程又有所不同,主要分为以下两种。

一种是编译。计算机在把程序的全部指令一次性翻译成计算机能读懂的内容后,再执行,如C语言,C++等都属于编译型语言。

另一种是解释。计算机在对程序进行执行时,翻译一句就接着执行,然后翻译下一句再执行,如PHP,Basic等语言。

本书所讲的Python语言是两者的结合,它的解释器保留了编译器的部分功能,而且随着程序的运行,解释器也会生成一个完整的目标代码。1.3 选择更好的算法

针对上面这个题目,乐乐一阵忙活,1加到2,2加到3,3加到4……终于得出了结果为5050。

而学过奥数的欢欢,直接说出了答案是5050!1787年,10岁的高斯用了很短的时间就算出了结果,因为一共有50对数,每对数的和都是101。

在上面的例子中,乐乐用传统的方法计算,而欢欢则利用高斯的方法在更短的时间内计算出了结果。虽然两种不同算法的结果都对,但计算效率却明显不同。由此可见,一种好的算法可以提高计算效率。

既然乐乐的方法是算法,欢欢的方法也是算法,那么哪个方法好呢?大家一般都会选择欢欢的方法,因为计算快并且理解起来也容[1]易。而对于一个好的算法,我们一般会从五个方面进行判断。1.4 跟着全球的程序员学编程

计算机编程崇尚的是开源(Open Source)精神。顾名思义,程序员和计算机爱好者及一些有名的企业和组织常常喜欢将代码开源,供其他人研究和学习。这样的开源平台有很多,如GitHub,GitLab,Coding等,而目前最出名、规模也最大的就是GitHub。在GitHub上,我们能找到好用的工具、免费实用的学习资料、优秀的博客,甚至有趣的游戏。

打开浏览器,输入GitHub的官网网址,就能看到GitHub的首页(图1-2)。图1-2 GitHub首页

首先我们需要注册一个GitHub账号。在填入Username(用户名)、Email(邮箱)和Password(密码)之后,单击下方的注册按钮“Sign up for GitHub”。这里我们使用的用户名是yangyang-programming。

接下来会出现一个验证问题,完成验证进入下一步(图1-3)。

然后出现的是方案选择的页面,这里我们选择针对个人账号的Free(免费)方案(图1-4)。单击“Continue”按钮之后出现的是定制化使用体验页面,因为是首次使用,这里可以单击下方的“skip this step”按钮跳过这一步。接下来,就可以关闭浏览器,打开邮箱,然后单击邮件中的验证按钮“Verify email address”以验证账号(图1-5)。图1-3 注册验证图1-4 方案选择图1-5 邮箱验证

再单击打开,就能看到注册成功的页面(图1-6)。现在,我们已经可以通过搜索来寻找感兴趣的代码仓库了。图1-6 注册成功

在网页的搜索框中输入“Flappy Bird”,得到如图1-7所示的搜索结果。图1-7 Flappy Bird的搜索结果

乐乐看到了第二条搜索结果“yenchenlin/DeepLearningFlappyBird”,是作者“yenchenlin”开发的名为“DeepLearningFlappyBird”的代码仓库(图1-8)。打开这个链接,就可以看到作者发布的源代码。图1-8 DeepLearningFlappyBird仓库[1]陈小玉. 趣学算法 [M]. 北京:人民邮电出版社,2017.第2节认识“大蟒蛇”

1989年,荷兰人Guido van Rossum(吉多·范·罗苏姆,也称“龟叔”)开始开发Python语言,作为ABC语言的一种继承。2018年,[1]Python被TIOBE编程语言排行榜第三次评为年度语言。同年,在[2]IEEE Spectrum编程语言榜单中,力压C++,C语言,Java,C#,PHP等语言的势头,稳居第一。30年间,Python从无到有,经历了计算机技术和互联网技术的大发展,已成为当前流行的重要脚本语言之一。2.1 Python的诞生

从1946年世界上第一台现代电子计算机埃尼阿克(ENIAC)问世到20世纪80年代,计算机的发展经历了从电子管、晶体管、集成电路到大规模集成电路四个阶段的转变,计算机性能有了大规模的提升。以IBM和苹果为首的两大公司,也掀起了个人电脑的开发浪潮。尽管计算机技术得到了快速发展,但个人电脑的配置依然很低。因此,程序员不得不考虑对程序和编译器进行优化,以增进其运行效率。

Guido van Rossum希望能够有一种语言,既能像C语言那样高效[3]地调用计算机功能接口,又能像Shell那样快速轻松编程。虽然由荷兰的数学与计算机研究所开发的ABC语言已经具备了良好的可读性和易用性,但由于ABC语言编译器需要比较高配置的电脑才能运行,因此它最终也没有流行起来。1989年,“龟叔”开始写Python语言的编译器。1991年,第一个Python编译器诞生,具有类、函数、异常处理、表、字典等核心数据类型,以及以模块为基础的拓展系统。

与此同时,Intel公司发布了80486处理器,大幅提升了计算机的性能,这标志着个人电脑和互联网时代逐渐到来。这一时代,计算机硬件能力的提升使得程序员更加关注易用性,因此面向对象的编程语言C++、Java等开始流行,这也给Python创造了较好的发展环境。1991年,Linus在comp.os.minix新闻组上发布了Linux内核源代码,开源成为一种新的开发模式。可爱的“龟叔”也维护了一个maillist(邮件群组),Python用户可以通过邮件进行交流。2001年,Python发布2.0版本,也从maillist的开发方式转为完全开源的开发方式。全世界不同行业、不同领域的参与者一起为Python的发展做出了贡献,推动Python语言进入了高速发展期。

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

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载