学习Python的误区:如何避免浪费宝贵时间

发表时间: 2024-05-27 22:33

这篇文章不是广告,而是给很多学Python而又无所得的同学一些建议。

自学 Python 很久却还是不会用,就像你学英语十几年还是不会说,原因是一样的,你没有把Python当做工具去用,而是一味地学,等同于纸上谈兵。

《笨方法学Python》作者说过这样一段说:

编程语言这东西并不重要,重要的是你用这些 语言做的事情... 不要被围绕某一种语言的宗教把你扯进去, 这只会让你忘掉了语言的真正目的,也就是作为你的工具来实现有趣的事情。

编程作为一项智力活动,是唯一一种能让你创建交互式艺术的艺术形式。你可以 创建项目让别人使用,而且你可以间接地和使用者沟通。没有其他的艺术形式能 做到如此程度的交互性。电影领着观众走向一个方向,绘画是不会动的。而代码 却是双向互动的。

我们理解下,学Python不是目的,真正的目的是解决问题,实现有趣的事情,哪怕这种工具不是Python也行。

所以从一个学习者的角度来看,一定要带着目的学习。Python的用途有很多,比如网络爬虫、机器学习、数据分析、金融量化、自动化办公等,如果没有目标瞎学,效率会非常低。

你去观察下你的工作有哪些是可以用编程去做,然后对症下药,专门学习Python在这块的应用场景。

比如说你做金融分析工作,就应该思考金融领域有什么用到编程的地方,比如量化交易、定价模型、风险管理等,那这些领域Python有什么优势?有哪些库和模型可以直接用?有哪些经典的策略?是否可以用Python去搭建应用工具?....

各种各样的行业用到编程的地方太多了,你应该多想、多做、多反思,这样就不怕不会用Python了。

想好了为什么学Python,接下来就是疯狂的去练习,撸代码。

去每天花两小时写代码,去研读各种开源项目源代码。

去写技术博客,去蹭技术讲座、会议、公开课程。

去逛Github,去StackOverflow上提问,去论坛上找技术大佬聊天

去参加软考,去参加ACM等正规编程比赛。

去尝试自己写一个个人网站,或者开发一个游戏APP。

......

只要你愿意提高代码能力,有无数种方法能帮到你,但你需要让你的意愿充斥整个身体,并相信能做好。

俗话讲,不积跬步无以至千里,新手想要成为高手,疯狂的练习是第一步。

Github上有很多Python项目案例,教程、开源项目、技术书籍、数据资源层出不穷,你可以挑合适的去复现,养成解决问题的习惯。

比如说大名鼎鼎的pandas、django、tensorflow、pytorch、requests等都在github上有开源代码。

还有诸如awe-some python、Python-100-Days、ML-For-Beginners等这样的资源教程,有十几万的star,非常适合初学者去学习。

你用Python关键词搜索,会出来300多万的相关仓库,足够你花一辈子去学习。

还有像kaggle上也有很多练习,Kaggle是世界上最大的数据科学比赛网站和社区,里面有成千山万个比赛项目,涉及数据分析、机器学习、深度学习、数理统计、可视化分析等全方位的数据科学知识。

kaggle还有各种各样的免费数据集、模型、教程文档,提供给python数据科学爱好者使用。

这样的资源不计其数。

Python编程应该是最能体验prctice make perfect的技能之一,在前期积累的阶段,往往要大量的去刷题、比赛、模仿,才能显得游刃有余。

可能练习不一定会让你完美,但大量的练习会让你产生髓磷脂,一种神经元外侧的脂质,能让你的脑回路更加灵活。

人的大脑可以分为反射、思考、记忆三个功能,大脑可以通过大量的反复练习让思考演变成习惯,最后跳过思考只需要反射的指令操控就能完成,从而达到“生巧”的效果。

当然,练习不是一味的重复,或者去完全复刻别人的代码,每一次练习都应该增加难度,有突破自己认知的成长。

这样经过反复的输入、评估、输出、纠正,你会有惊人的变化。

总而言之,明确的目的+疯狂的练习是学好Python的不二法门,可能也是绝大多数技能的精进之路。