潍坊市论坛

首页 » 分类 » 问答 » 详细介绍Python的入门书Pytho
TUhjnbcbe - 2023/4/4 14:36:00

2年前开始接触Python,我在前辈的推荐下买了《Python基础教程》,两年内我写了将近8万行Python代码,在写代码的过程中,还会时不时的回去翻阅这本书,真心觉得这本书写得不错,非常适合初学者,是入门的绝佳好书。

这本书的章节安排属于正统的教学方法,喜欢趣味教学方法的人可能会不太适应这类书。

下面我来介绍下怎么用这本书

第一章快速上手

很多优秀的编程书籍都会在第一章给出这门语言的一个总览以及常用的特性,可以说平时常用的70%的概念都会在第一章里面做一个简介。这种做法非常好,让大家对这门语言有一个快速的认识,建立一定的兴趣,比如这一章告诉了我,Python可以当一个计算器。甚至还可以计算复数!

第一章教了我们什么是程序,引入了算法的概念,原来算法一词就是菜谱或者流程的时髦说法而已。还告诉了我们程序的组成单位,变量、表达式、语句。这些概念是学习任何一门编程语言都需要了解的通用的概念,当了解了这些概念,就可以触类旁通,学习别的编程语言就简单多了。还介绍了如何接收输入,函数,模块,保存程序,运行程序,注释。以及最常用的字符串,任何编程语言里面都要和字符串打交道,我们平时写代码打交道最多的也是字符串,所以在第一章就基本上做了非常详细的介绍。

建议大家学习完每一章都要看一下最后的小结,复习一下这一章介绍的概念。

第二章列表与元组

第二章介绍了一个新的概念,数据结构。这也是学习每个编程语言需要去了解的常用的数据结构。一般学习一个新的编程语言,在学习完基础语法,变量,表达式,语句,标识符,基础运算符,函数,模块这些基础概念之后,就需要学习字符串,列表,集合,字典等常用的基础数据结构,懂了这些数据结构,再加上输入输出,可以说很多程序都难不倒我们了。

这一章介绍的列表与元组,都是容器。各种编程语言中主要的容器都有两种,序列和映射,差别在于怎么定位容器中的内容。

第三章字符串

这一章更详细的介绍了字符串,其实字符串也是一种序列,所以通用操作也可以用。这一章介绍的点在于格式化字符串,也就是如何按照你要的样子输出字符串,以及各种字符串的方法。

第四章字典

这一章介绍另一种重要的容器,字典。它的特点是利用映射来定位容器中包含的内容。当学完这一章,常用的数据结构就学的差不多了。但是有了这些数据结构,但却没法用他们,数据结构只是让我们有了数据,拿到了数据,但是最终我们还是要对数据做些什么,所以作者立马就安排了下面一章来教我们这么用数据。

第五章条件、循环及其他语句

一般我们接触的程序都是对数据做一些事情,所以这一章就是教我们如何对数据做一些事情。这一章先把一些没地方放的内容放在了开头,然后从第四小节开始介绍语句。

第六章抽象

这一章,介绍了一种偷懒的方法论,叫做抽象。大家说,因为想偷懒,才创造出程序员这种职业,其实程序员是想节省时间,而不是偷懒。

抽象是一个程序设计中比较专业的概念,是思维层次上的一个提升。0基础的话理解这部分概念需要一定的时间,没关系,先用着,用着用着就理解了。

现代编程语言的抽象手段很多,而函数是每一个都有的,也是最基础的。所以这一章重点介绍了函数以及参数。

这一章还介绍了一个概念,叫做函数式编程,对应的概念叫做面向对象编程。在我几年的编程工作中,函数式编程无处不在,事实上,能设计出一个很好用的函数,已经是非常厉害的抽象能力了。

这一章有很多例子,建议都照着敲一下代码,看电子书的千万不要复制黏贴,要自己亲手一个个字母敲进去。

第七章类和对象

这一章介绍更高层的抽象,其实对象(类)和函数是两种不同的抽象方式。前者用来抽象数据,并且绑定一些动作。后者用来抽象处理数据的工作。前者抽象的是什么,后者抽象的是做什么。

这一章首先介绍了面向对象三大概念,封装、继承和多态。这是任何一个面向对象编程语言都有的。

到这一章学完,基本上我们就可以完成很多基础的程序设计和编写工作了。真的吗?这么简单吗?对的,就是这么简单。我们只要学到第七章就行了。我们生活中很多程序都可以写了。比如我之前写的一个小爬虫程序,就只有几十行代码,用到的还只是前六章的知识点。

我建议在这一章结束,可以不用急着往后看,已经可以去写一些程序了。

本书虽然没有习题,但是从20章到29章,介绍了10个不同的项目,在现阶段,就可以去照着做一下了,遇到还没有学的概念,可以跳过。这10个项目,都可以做一个初级版本出来。

老实说,我觉得这本书好就是因为它的章节安排非常合理,非常适合初学者循序渐进的一点点掌握Python。

其实第一个项目就很难,我当时看完前5章去做了一下,没做下去,又看完6,7章去做,做的很艰难。很多概念看过和实际动手去做事两码事,但是老实说还挺有乐趣,一点点摸索,遇到不懂地就再回去看看相关的概念,这就是学以致用。

写完第一个项目我很有感触,其实就是那些最基本的概念,就是我之前说的一门编程语言里面最基本的那些概念,算法,语法,表达式,语句,运算符,数据结构,函数等等。再照着写两个项目,体悟更深了,事情慢慢变得容易了。

第八章异常

异常是我至今没有掌握好的一个概念,我不知道啥时候该使用异常,啥时候不该使用异常。平时也只会简单的tryexcept而已。

第九章魔法方法、特性和迭代器

比较散乱的一章,但是平时用的非常多,学会这些,一定要学会,我们的程序会变得更好用。如果要找工作,那么迭代器和生成器是每一次面试必考的,所以这个概念一定要掌握。就算不为了面试,这两个方法也很好用。

我第一次用的时候也是觉得可用可不用,结果用熟了以后就觉得,嗯,真香~~~

第十章开箱即用

这一章主要介绍模块,包的概念。Python是一个胶水语言,是一个万金油语言,我们能想到的事情,Python的世界里面基本上都有现成做好的模块给我们用。我们所要做的就是去搜索到这个模块的名字就行了。

有人会疑惑为什么这一章不稍微介绍下pip这个包管理器,因为平时我们就是用它来安装各种包、模块的。因为这一章是“开箱即用”,主要介绍标准库。

这一章很长,内容很多,建议把提到的模块都用一下,了解一下,因为它们的的确确是用的最多的。

第十一章文件

我们平时跟文件打交道实在太多了,所以这一章是重点,都要掌握。

第十二章GUI

我觉得这一章不太好,像是凑数的,内容太简单。GUI指的是图形界面编程。如果没有这种需求,可以不用学。如果想要用Python做GUI,可能其他的库,比如PyQt,wxPython等是更好的选择。

第十三章数据库支持

这一章介绍的是SQLite,我用这个数据库做了一个家庭计账簿,用了2年多了,挺好用:)学会了这一章,以后用别的数据库模块会发现,接口都一样,这就是抽象。

第十四章网络编程

我从未写过网络编程,所以也没有看过这一章,所以无法给出意见。

第十五章Python和Web

这一章介绍的是抓取网页和做Http服务器,以及介绍了Web框架。

我是看了爬虫的教程再回去看这一章,发现书里面写的东西用处不大了。只有一个BeautifulSoup还有点用。web框架Flask用的人不少,不过我用的是Django,所以久没有仔细看。

第十六章测试基础

这一章非常实用,建议一定要看,尤其是要应聘测试工程师有要求懂Python的,那么这一章的内容要掌握。

这一章提到的理念“先测试后编码”,测试驱动的编程,先编写需求说明,重构都很重要,平时工作使用Python的时候可以有条件的选择一些来执行。介绍了两个测试工具很实用,平时都会用。

第十七章扩展Python

了解各概念即可,一开始估计用不到。我是两年后用到别人给的C接口时才去学SWIG的。

第十八章程序打包

如果我们很满意自己写的程序,想让更多人使用,那么本章就介绍了标准的做法。我没有分享过代码,所以自然也没有看过这章,无法给出评价。

第十九章趣味编程

这一章的理念很棒,我自己使用的XP开发方法,当然我跟作者一样,比较懒,大多数规范我都没有遵守。

这一章的原型设计是设计程序的最佳实践之一,配置也是很重要,稍微大一点的程序,都要用到配置才有一定的灵活性。我的配置文件一般是json,所以这就又用到了第10章里面介绍的json库。

最后作者列得参考书目,如果通过学习Python对编程有了更多的兴趣,就可以看一下,就像作者所说的:“就算不详细阅读这些著作(我反正没有详细阅读),随便翻翻也将让你深受启迪。”

第二十章--第二十九章

十个不大不小的项目,建议都做一下,学完前7章就可以开始做,学习了之后的章节后不断完善,其实这个过程就是XP(极限编程)。

能看到这里的小伙伴们,我相信你们一定是对学习Python感兴趣的,通过这本书学习吧,不会让你失望的。

1
查看完整版本: 详细介绍Python的入门书Pytho