最近由于数据分析的各种火,也带动了python跟着一起火了,很多非专业的人纷纷投入这个行业,各种培训机构崛地而起,各种教学视频,文档满天飞。即使在那么多的学习资料的前提下,还是有很多人问我,我应该怎么学习python,或者提问一些很简单的问题,我总是充满了不解。下面我分享一下,我是如何在2天内学会python。
1. 如何学习
1.1 寻找合适的资料
不推荐通过视频进行学习,视频学习的时候节奏会比较拖沓,耗费的时间比较长,而且需要这个过程保持精神集中,因为一不小心就错过了某个知识点,而且视频没有书籍的目录,无法比较精确定位到某个知识点。也不推荐在网上看一些零散的博文,因为那样不成体系,还要自己去填充各种知识点。推荐我使用的一种方式,在网上找一些成体系的电子书,为什么不是纸质的书呢,因为纸质的书携带不方便,没有办法随时随地可以看。
我主要是通过廖雪峰的官网学习python,为什么选择这个,因为目录的内容比较全,每一章的废话没有那么多,可以快速阅读完。
1.2 快速阅读目录
快速阅读目录会让你对整个内容心中有一个谱,对于接下来的精度可以有一个区分,对接下里哪个章节是需要费点脑力,哪些是不需要的,在心里已经标记好了。
1.3 关注差异点
浏览完目录后,不要急着按每个章节进行编写代码,而是开始阅读每一个章节的内容。粗略的浏览一次,浏览的过程,在心中对一些跟之前的理解有差异的点,重点标记一下。举个例子:当你读到“协程”这个点的时候,这个是以前没有接触过的,就重点标记一下,在后面的实践中重点学习一下。如果这个时候读到的是递归函数,之前接触过的,就直接带过就可以了。
1.4 跳过一些目前不需要的独立章节
在浏览目录的时候,了解到前面十章是比较基础的语法,数据结构这些,这些是必须掌握的,到了后面的几章,是比较独立的章节,分别讲述了不用的应用层面,其中“电子邮箱”,“web开发” 目前我是不需要用到,就直接跳过这两节。
1.5 实践
学习任何一名语言,最终回归的是实践。只有敲出来,自己进行调试,才能更深刻的了解。实践的内容主要是前面浏览的过程中,有问题,或者不清楚的内容,直接通过代码的调试进行理解,那些比较简单的例如:条件判断,面向对象的东西,就直接跳过。
完成上面的操作,大概用了2天时间,对Python的基本使用没有什么问题。也许这个时候有人会觉得有点扯,有点不太可能,套用一句:看山是山,看水是水;看山不是山,看水不是水;看山还是山,看水还是水。
2. 我们看到的不一样
2.1 list,set
当我看到这些,我脑海里就浮现了相应的数据结构,下意识就像知道这样的结构要怎么添加,删除,长度是怎么判断的,然后对应到文章的内容,里面提到的操作是怎么写,再跟之前的其他的语言的写法进行对比,只需要记住2者的差异就可以了。 这样的知识点对于我来说就只是剩下跟之前语言的差异点。如果是一个之前没有接触过的人,他首先需要了解一下,这个什么结构,然后按照文章的例子打印一下,看看是长什么样,然后再根据例子操作一下对应的一些方法,看看有什么效果。
2.2 继承,多态
看到这两个词,直接就是动物--》四只脚的动物--》羊,牛 的场景,当你看到我写的这个场景,也许你还不理解这个是什么的,这个时候你就需要慢慢的通过大量的场景去理解这个概念,然后在这个概念的基础上映射到代码的实现上。
3. 如何能快速理解python
需要具备以下各个方面的知识
- 数据结构,需要了解一下普通的一些结构,List,set,map,各种冒泡算法,递归算法等
- 系统的一些概念:进程,线程,协程,TCP,UDP,HTTP协议等
- 函数的概念,应用;面向对象的思路,类的继承
- 设计模式可以了解一些
- 熟悉一下一种编辑器:eclipse,pycharm,idea等其中一个编辑器使用
- 调试解决问题的能力