资深程序猿分享如何系统地自学 Python?

    经过大量开发者的宣传,Google 等大企业的大力推广,人工智能的白热化,大数据时代的来临以及 Python 纳入高考的发酵,Python 已经走在了风口浪尖上,大量的开发者涌入 Python 的学习中。
   但是,好比现在移动开发者过剩一样,未来也一定会迎来 Python 人才过剩的时候,不过,能经历人才过剩的行业一定是好行业,但我想说的是,过剩的永远只是那些初级水平的从业者,过硬技术的从业者永远都是稀缺的。因此对于学习,还是得踏踏实实的。自学 Python ,也是一样,不要一开始因为头脑发热就不停地收藏各种资料网站,购买各种书籍,下载了大量的教学视频,过了几天,学习的热情开始褪去,再过几个星期,终于完成了学习课程 —— 《从入门到放弃》。所以,在自学的过程中,最为重要的还是要摆正心态,忍受孤独,朝着自己的目标坚持下去。
   心态摆正了,目标也有了,那么该如何自学 Python ,正式入门呢?
   入门
   对于 Python 的入门,     
   主要分两类,一类是有编程经验的,       另一类就是零基础入门的。
   个人认为这两种人的入门方式还是有区别的。
   -有一定编程基础对于有一定编程经验的来说,Python 入门一般只是了解语法和 Python 特色用法,再加上 Python 本身就有简洁友好,易入门的特点,因此推荐看一下系列的博客或书籍,了解基本的语法。这里不推荐看视频教学,因为有些知识对于有编程经验的人来说,会显得简单,甚至对于某些人来说,已经很熟了,所以就没必要浪费这些时间了。下面推荐几个适合入门的视频教程和博客书籍,但是,要明确一点,当你学习的时候,选定适合自己的一个,坚持学下去。注意,是选择一个,在这里很多人都会犹豫不定,我该选哪个,这个好像讲的不怎么全,那个又缺了这一块。其实这是完全没必要的,与其在这里浪费时间,犹豫不决,还不如立刻就学起来的,等学完在补充自己认为不足的知识点。
   慕课网慕课网上有很多免费的视频,也有一些实战课程。对于自学编程,这个网站蛮适合的。
   雪峰的 Python 3 教程经典的 Python 入门教程,对于有一定编程基础的同学,这个教程应该很适合你。
   编程基础的对于零基础入门的,因为缺乏对编程语言,算法,数据结构,编程规范的了解,且还没有养成编程思维,那么入门就会显得枯燥和痛苦,但只要摆正了心态,这也会是一个快乐的过程。因此对于零基础入门的编程新手而言,更加推荐教学视频和书本结合的方式进行学习,在教学视频中,不仅能一步一步地跟着老师敲代码,还能更好的学到老师的编程思维,养成良好的编程习惯。当然,每看完一集视频,都可以配合书本,博客进行温故而知新,最要强调的还是,不管你觉得这代码有多么的简单,多么的容易,都要自己敲一遍,只要自己真正去敲过,去用过,才会有体会的。
   但是 0 基础自学真的不适合所有人,毕竟编程是有一定门槛的,有的人悟性也没那么高,很容易在一开始就放弃,这个时候我强烈建议你报一个网上的在线课程,跟着课程先建立编程的思维,培养好的编程习惯,这是自学难以达到的,这里推荐 Udacity,这是 Google 实验室创始人创办的针对编程的在线教育网站,Google、Facebook、GitHub 的工程师都在上面授课,就是最大的质量的保障,而且有社群、有导师帮助你用正确的姿势入门,所以,对于 0 基础想学习编程的同学,强烈推荐 Udacity,如果想学 Python 的,那么推荐这么一个「Python 入门课程学习群」:点击链接加入群聊【Python学习交流群】:https://jq.qq.com/?_wv=1027&k=5OgeftU ,欢迎大家加入       
   当学完入门的知识点后,就尝试进行一下实战,这里指的实战不是指要做多么高大上的项目,而且这时候也做不出来,而是尝试做简单的项目,比如不用任何框架,就用 Python 自由库进行爬虫。这里遇到问题千万别让自己停留下去,找各种方法解决,也不要管自己的代码写的有多烂,用的技术有多么的陈旧,总之就是硬着头皮,也要完成这个项目。只有经历过这样的实战,你才会知道自己有哪方面的不足,缺乏哪些知识点,然后再进行知识填漏。
   进阶
   入门阶段只是了解 Python,至此你要根据自己的兴趣爱好或者就业意向选择 Python 的方向,才能让 Python 进一步发挥它的价值。
   Python 编程方向有很多,比如爬虫、数据分析、Web开发、自动化测试、运维开发、机器学习、人工智能等等,每个方向都有自己特定的技能要求,因此学习的知识也就不一样。
   在这个阶段,如果一直纠缠在理论的泥塘里不能抽身,那么学习积极性也会被不断的挫败消磨的所剩无几,能够坚持下来的也就寥寥无几了。因此当你选定了一个方向之后,就可以找一些实战的课程来学习,一边跟着实战,一边学,当然,这里也顺便说下,Udacity 上也有很多关于数据分析、机器学习这类更高级别的课程,而且包含一些实战项目。其中你会不可避免要接触大量类库,阅读大量文档,也会遇到 Python 之外的大量编程知识,毕竟这是通过 Python 与其他知识结合,解决对应的业务需求问题的时候。在这里,唯一的建议就是,莫贪心,耐心地学好自己原先指定的计划,再学其它。不要再学习的过程中,听到某大牛的建议,用什么来解决更好,就改变方向,至此就很容易进入一个死循环里面,一直循环下去。
   至于这个阶段什么时候算完成,取决于你所了解的知识,硬要说个标准的话,就是你能单独完成一个项目。当然,在这个阶段培养自己快速阅读文档,拿到新包,就能快速找到自己所需的函数,读函数名,看参数,返回值就能大概猜到函数作用的能力。
   深入
   到了这个阶段,大部分都已经从事 Python 工作一两年,或者对 Python 很熟悉的了。这个阶段更多的事阅读源码,深入学习,可能这里需要大量的理论知识来支撑。就拿机器学习来说,你要进一步深入,就需要大量的数学理论知识来支撑,比如统计和概率论、微积分、凸优化、运筹学、泛函,否则只会望而却步,或者一直处在调用机器学习开源库的瓶颈上。数学理论知识就会限定了你的能力圈。**加粗样式**
   到最后给大家推荐一个python学习群:774711191 ,欢迎大家加入
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值