编程语言
首页 > 编程语言> > 为什么自学Python看不进去?转头就忘?

为什么自学Python看不进去?转头就忘?

作者:互联网

我自学编程的入门语言不是 Python,但看书时同样常常感到无论怎么努力都 “看不进去”,明明每句话好像都懂了,但转头就忘,让人极其崩溃,后来花了很大力气才搞定。

Python 是我学的第二门语言,和学第一门时相比,奇迹般的顺利了好多,之后又学过很多新的语言和技术,虽然也会经历不少困难,但这种完全“看不进去”,一筹莫展的无助感觉,却再也没有出现过。

事后回想,我才明白,自学时“看不进去”,可能和具体语言无关,而是因为还没真正入门:学第一门语言时,特别容易被这样的问题困住;学第二门乃至更多语言时,就很少遇到这种问题了。

为什么会这样呢,简单分析一下。

所谓“看不进去”或者“记不住”, 本质上还是“看不懂”。 你可能觉得书上写的都理解了,示例代码照着敲下来,也能正常运行,怎么能说看不懂?

其实只要你发现一段话翻来覆去读了好多遍都记不住,就说明肯定还没懂,想想那些你已经真正理解透彻的东西,是不是好像有种它天生就在你脑子里,根本不是后来才装进去的错觉,而且还能随意变换各种方式把它讲给别人。到这种程度,才算真正懂了。

初学者不容易弄懂的,是什么呢?

举个例子:比如任何一本关于 Python 的书,大概都会讲到 Python 常用的几种数据结构,通常都能把各种数据结构的定义解释清楚,再给出一些示例代码,告诉你这个数据结构怎么使用。对于已经有编程经验的人来说,读完这些基本就够了,实际开发时如果需要更多细节,可以再去 Python 的官方文档里查阅。

但对于零基础的初学者,就没这么简单。你能看懂“列表”和“字典的概念和语法,也能照猫画虎套用书上的示例代码,但很可能并不太理解为什么要搞出这些奇奇怪怪的数据组织方式,更不知道如何用它们来解决实际问题。

再举个例子:对你来说,理解函数和类这样的概念可能不难,至于怎样定义和使用它,书上也写的非常清楚,做练习时因为题目往往要求很明确,也能顺利完成。但只要开始自己写代码,马上一团乱麻,根本没法用你学过的这些技术让代码结构变得更清晰。

以上种种,总结来说,就是初学者对“编程”这件事还没有形成清晰的整体认识,因此学习时无法把接触到的每个单独知识点快速体系化,只好先把它们胡乱塞进脑子里,和暂存在内存里的数据一样,一觉醒来可能就不记得什么了,然后发现自己怎么学完就忘。长此以往,挫败感越来越强,于是未入门即放弃,这是很可惜的。

如果学过开车,这种情况应该并不陌生,第一次握着方向盘,所面对的一切都是陌生的,很容易手足无措,一边手脚并用对付车上各种乱七八糟的装置,一边神经紧绷关注外面的路况,脑子里还要回想交规和教练规定的各种口诀,是不是感觉超难?而且不论你学车时用哪一款车,这种困难感都不会相差太多。但等你成为老司机之后,不管什么车,哪怕从来没碰过,只要摸索一下各个装置在哪里,马上就能开着上路。

编程也是这样,学第一门语言是最难的,因为你要搞定的不止这门语言,还包括它背后整套庞杂的体系和大量相关的背景知识,但只要咬牙跨过这道门槛,以后再学其它语言和技术时,难度就和开一辆新车差不多。

上面是原因。下面说说该怎么办,我有三个具体建议。

第一个建议:不求甚解

没必要强求自己理解书上(或者各种形式的课程里,道理相同)每一个知识点,但要保证照着敲下来的代码能够正常运行。

前面分析过,除了少数天才,一个智商正常的初学者,在积累到足够经验之前,有些东西注定难以真正理解,只顾埋头跟它纠缠,容易耗光本来就不多的斗志,非常不值得。

好在编程很务实,代码是检验真理的唯一标准,即使有些概念暂时不懂,只要代码写对,就能得到正确的结果。

别小看这个要求,即使照着书抄,保证所有代码正常运行也不是件特别容易的事。拼错单词、把英文标点符号打成中文的、弄错换行缩进之类格式,这些新手易犯的错误你肯定也摆脱不了,但错过很多次之后,就会越来越细心,键盘敲的再快也很少出这类差错了。

当然,你还会遇到各种各样的报错。软件版本更新很快,你电脑的系统环境也可能和作者所用并不一致,所以书上的正确代码,在你的电脑上未必也能正确运行。这种情况太常见了,不论你用哪本书学都几乎一定会发生。

遇到书上根本没提到的报错信息时,唯一能做的,就是静下心来,搜索报错信息里的每个关键词,然后认真研究,想尽一切办法让报错消失。在这个过程中,你会不知不觉学到很多东西。解决掉的错误越多,你的能力就提升越快。

第二个建议:死记硬背

我不是建议你背书,而是建议可以尽量把书上那些你已经运行成功的一段一段的代码背下来。这个方法听起来好像有点笨,但对还没有建立起知识体系的初学者来说,却行之有效。即使暂时不理解这段代码,只要能把它背下来,徒手敲进编辑器,并保证运行无误,这个过程重复五到十遍之后,就会渐渐发现,你好像已经开始明白是怎么回事了。人类的大脑就是这么神奇,不信可以亲自试试。

还记得小时候写作文吗,没几个同学能一动笔就写出几百字的文章吧,都得经历大量组词、造句的练习才行。编程也是如此,不先记住足够多的代码片段,是很难直接写出完整程序的。

具体要背哪些代码呢?如果在学第一门语言的话,我建议背每一段示例代码。可能你感觉有些代码真的太长了,不可能背得下来,但实际敲几遍就会发现,再长的代码,也有规律可循,或者是同样的模式重复很多次;或者是可以拆分成多个独立部分,每个部分各司其职。动手敲的遍数越多,这种规律性在你眼里就越清晰,清晰到一定程度之后,这段代码其实已经被你牢牢记住了。

第三个建议:守株待兔

和一些学过编程的朋友交流,发现每个人入门时,或早或晚都需要经历一次“醍醐灌顶”的时刻,然后才感觉开始摸到一些门道,继续学习也慢慢有了章法。

那个神奇的时刻到来之前,脑子里很多概念和想法始终模模糊糊的缠绕在一起,怎么努力都理不清头绪,但某一天,可能是清醒状态,也可能还在睡梦里,好像通电一样,一瞬间所有困惑突然解开,全部道理和互相之间的关联变得明明白白。随后就产生了新的疑惑:这么简单的事情,我之前怎么就是死活都想不通呢?

这个时刻确实很爽,可你不能主动去找它,只有不断努力,重复练习,即使很长一段时间都感觉毫无进展,甚至似乎在退步,也不要放弃。坚持一段时间之后,一定会等到属于你的那个“醍醐灌顶”时刻。

目前我觉得python前景最好,我个人也主要在这个方向发展,下面有一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

标签:语言,Python,代码,编程,学习,转头,自学,书上
来源: https://blog.csdn.net/xiangxueerfei/article/details/122702128