社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  python开源

8个月的Python学习历程,他的经历感动了整个程序员圈子!

夏天 • 6 年前 • 673 次点击  

从正式开始学习Python到现在差不多8个月的时间了,虽说进展比较缓慢,但多少也算有些进步和体会,现在想把把这大半年来的学习情况简单梳理一下,既是给自己做个总结,也希望能给与我情况类似的朋友们一点帮助。

本篇文章有几千字,是奔跑的鳄鱼同学辛苦写了几天的总结,也许对初学者有用,建议大家耐心看完

一.我的情况 作为一名非技术类岗位在职人士,学习Python不以转行求职为目标、不以提升工作能力为目的、不以直接经济利益为诉求,仅仅当作一项业余活动来看待。当然,这种情况下学习的劣势是显而易见的:

没有明确的目标,学习方向不固定

没有强烈的动机,学习欲望不强烈

没有项目的支撑,学习环境不理想

就我自身情况而言,由于长期从事非技术类岗位的工作,无论对web开发还是数据分析,相关知识都比较欠缺。 另外由于工作比较忙,不能保证每天都有机会使用互联网,相信就这一点而言,很多打算学习Python的朋友都要比我有优势。

不过,严格来说我也不算是完全零基础,毕竟是工科专业出身,读书时参加过ACM之类的比赛,做过计算机方面的一些项目,编程的基础还是有一点。

自己创建的Python学习交流群:302521268感兴趣的可以加一下

二.心路历程 从最开始接触Python到现在,我把自己的学习历程大体分成徘徊、入门、进阶三个阶段。

1.徘徊

最开始了解Python这门语言大概是2年多以前的事了,当时动过学Python的念头,但就像前面说的那样,缺乏明确的目标和强烈的欲望,学习这件事刚开始不久就被无限期搁置了。

第二次打算学习Python是去年夏天,当时刚好自学通过了一门资质认证,下半年打算给自己再找一个新目标,就又想起了Python,庆幸的是这次坚持了下来,一直到现在。

说起来这次能够成功入门并坚持学习,“菜鸟学Python”这个头条号功不可没,事实就是地讲,这个头条号里有很多适合小白和新手的东西,能够让你在短时间内对Python语言、应用领域、学习方向有一个大概的了解,能够帮助你一步一步地正式展开对Python的学习。

2.入门

要想入门一门语言,有两个要素无法回避的,一是学习资料,二是开发工具。

1).学习资料

网上的视频、书籍、博文等学习资料可谓铺天盖地,但毕竟我们的学习时间是有限的,不可能去一一尝试,选好适合自己的学习方式和资料对入门者来说是很关键的一步。

我的选择是阅读纸质书籍,选几本适合自己的书静下心来认真阅读,书中的代码一定要仔细琢磨(有条件的可 以自己把代码写一遍,加深理解),实在看不懂的地方可以暂时跳过,但一定要坚持读下去,说白了就是“硬啃”。

这里我着重介绍两本入门书籍:

《a byte of Python》:它最大的作用是让你对Python这门语言有一个 整体、全面的了解,为下步学习奠定基础。

《Python核心编程(第二版)》:需要注意的是 要一定要买“第二版”而不是“第三版”,另外这本书的中文版里面有一些错误,如果遇到了请不要怀疑,它就是错的!

2).开发工具:

学习Python以来,陆续接触过IDLE、pycharm、sublime text、spyder、Ipython五个编辑器,往期文章里有篇文章(Python开发工具之神兵利器),对开发工具进行了推荐,这里我简单阐述一下对上述五种工具的使用感受:

IDLE: Python安装自带工具,被很多人诟病,但我觉得它安装简单,反而很适合初学者。如果实在不喜欢,可以在学习一段时间后改选其他的工具。

pycharm:专业级神器,缺点是比较笨重,平时写小程序的话一般不用。

sublime text:轻量级神器,我的最爱,非常喜欢它的界面。

Anaconda:集成了大量数据分析相关库,安装方便,另外它的调试功能据说也比较强大。缺点是界面比较难 看,代码补全功能也不完善。

Ipython:又称jupyter,Anaconda自带,我最近才开始使用,能够实时查看代码输出(这一点也很适 合初学者)

最后再补充一点Python版本选择的问题,其实这个问题真的真的不用纠结,因为py2和py3的差别非常小,随便选一个尽快上手才是真谛。当然,对于没有明确需求的初学者,我还是建议选择Python入手,毕竟Py3是大势所趋。

3.进阶

这里所谓的“进阶”并不是说已经度过了入门阶段,而是指在学习Python基本语法的基础上做一些扩展,向着实际应用迈出第一步。

目前来看学习Python主要有三个方向:web开发、数据分析、机器学习。个人觉得Python在web开发领域没有太大的优势,而机器学习需要大量的理论和技能基础、入门门槛较高,所以我最终的选择是从数据分析入手。

这一阶段的学习方法除了自己阅读资料外,最好能找一些外部的支持,对口专业的在校生和在职人员或者是身边的老手请教。如果都没有可以从网络上寻求帮助,这方面我主要采取了下面两种途径:

1).结合自身情况购买一门在线课程

买在线课程的最大作用不是它提供的视频和资料,而是给你一个与其他人共同学习交流的氛围和机会,有的课程会设置进度或者时间限制,这些都可以对自学起到督促作用。

现在网上的课程很多,我觉得没有最好的,只有最适合。有的课程一套七八千RMB,虽然质量很高,但对于业余玩家来说是否必要还要看自己的选择。

我当时选的是一套300元左右的爬虫课程(为了排除打广告的嫌疑,平台名称这里就不写了),说这套课程有些缺陷,但它确实成功地带领我入门爬虫、入门数据这个领域,客观来讲还是物有所值的。

2).寻找并加入适合自己的网络群体

一个人自学很有可能因为动力不足而中途放弃,可以尝试加入一个或几个适合自己的网络群体(QQ、微信、 社区等),寻找志同道合的学习伙伴,相互交流、相互促进.

三.学习体会 1.坚持学习

坚持是一个老生常谈的话题,不过这里想说的重点略有不同,生活中我们都有很多事情要忙,不是所有人都能坚持每天挤出时间来 完成学习任务。

对于这一点我们要正确看待,“三天打鱼两天晒网”的状态是很正常的,学习中断了等有时间后继续就可以,要学会调整心态,不必因学习受阻而气馁、放弃,要接受这种并不顺利的学习状态,这才是我们业余学习者应有的坚持。

2.细化目标

在学习过程中,最好能够制定比较细小的目标,然后不断更新,像做一个web网站、开发一个小游戏之类的中 期目标,个人认为并不适合每一个初学者。

我们需要根据自身的学习程度和技能水平不断细化、调整当前的目标, 例如在语言学习初期可以设定“搞清楚is和==之间的关系”、“学习模块调用”之类的目标。

随着学习的推进可以调整 为“写一个小型爬虫”、“清洗并分析一组数据”之类的目标,以此类推。制定适合自己的目标可以让学习更有动力, 反之则会增强挫败感。

3.多练多看

“练”是指在学习过程中要勤于动手写代码,在学习初期,哪怕是照抄书本上的代码也可以加深对程序的理解

“看”是指要善于阅读和学习其他人优秀的代码,这样才有可能慢慢体会到Python真正的精髓所在。

自己创建的Python学习交流群:302521268感兴趣的可以加一下

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/29867