打开你电脑里那个叫“Python学习”的文件夹,看看里面有多少个叫“01_基础入门”的文件。收藏了上百个教程,买了五六本书,结果连个爬虫都没写出来。这不是你懒,是方法错了。
大部分教程都在告诉你变量是什么、循环怎么写。你看完两章就困了。这东西就像让你先背完一本字典再写作文。正常人谁扛得住。
有个办法能让你立马动起来。我管它叫“三秒戳一下”练习法。不听课不看视频,打开运行环境就开始。
你问运行环境是什么?最简单的就是浏览器打开Python官方Shell,或者在本地装个PyCharm社区版。别纠结环境,能打字出结果就行。
第一轮叫“拆东西”。找个你好奇的程序代码,比如一个简单的倒计时器,或者微信自动回复脚本。你不用从头写,直接复制过来。然后一行一行改。
把数字改成你的生日,看看效果变没变。把循环条件从10改成100,程序会不会崩。把文本里的字换成你名字,跑一下。这个过程叫破坏性学习。就像小孩拆玩具,不是为了拼回去,而是为了看里面长什么样。
每改一个地方立即按运行键。这步最关键。屏幕要在三秒内给出反馈。出错了马上看到红色报错,跑对了立马看到结果。大脑会记住这种因果关联。你记不住“字典”的定义,但能记住“改了key就报错,改了value就换数据”。
有个学员以前死活搞不懂列表和元组的区别。他找了个图书管理程序的代码,故意把元组的括号改成方括号。程序报错后他当场就记住了:元组不能改,列表能改。这比背十遍定义管用。
第二轮叫“粘东西”。把两个不同程序的功能拼一起。比如把一个计算器代码的输入部分,粘到另一个画图的代码里。不用管原理,能粘成功就行。
我粘过一个天气API的调用代码,和一个发送邮件的代码。粘完之后每天六点自动给我发天气提醒。功能很小,但成就感很大。这种实实在在用起来的东西,才让人愿意继续敲键盘。
第三轮叫“剔东西”。把你改过、粘过的代码,把看起来多余的代码删掉。一行一行删,删完立马运行。程序还能跑吗。不能跑就加回来。这个过程会让你理解每行代码到底是在干嘛。
有人问:“这样学出来的水平会不会很野?”没错,就是很野。你可能不知道sys.argv是什么东西,但会用argv写个命令行工具。你不知道__name__的原理,但知道在哪加if判断才能防止代码被乱执行。这些野知识够你应付80%的工作需求。
关键点就一个:每次动手到看到结果的时间不能超过三秒。超过这个时间,大脑就会分心去刷手机。环境配好,代码摆好,改完就跑。反馈越短,学得越快。
那个买了五本书的朋友,有本书直接撕了。他把每一页的代码片段剪下来,贴到代码编辑器旁边。看见一个就敲一个,敲完看结果。一个星期后他写了个能用的文件批量改名工具。
收藏夹里的东西不会自己跑进脑子里。你点开一个教程,把它从第一行复制下来,改掉第一个变量名,按一下运行键。这个动作一旦开始,后面就顺了。
现在去数数你桌面上那个“Python学习”文件夹,挑一个最简单的文件打开。改一个数字,按运行键。三秒后你会看到一个结果。不管是什么结果,你都已经开始动手了。