0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于学习Python的三个阶段的介绍

马哥Linux运维 来源:未知 作者:李建兵 2018-03-16 15:15 次阅读

王国维在《人间词话》中将读书分为了三种境界:“古今之成大事业、大学问者,必经过三种之境界:‘昨夜西风凋碧树,独上高楼,望尽天涯路’。此第一境也。‘衣带渐宽终不悔,为伊消得人憔悴。’此第二境也。‘众里寻他千百度,蓦然回首,那人却在灯火阑珊处’。此第三境也。

我从入门Python到现在也没有多少时间,所以写如此大的一个题目必定会引发各种批判,当然我没有想造一个大新闻,只是想根据自己的学习历程做一个简单的总结,同时将这三个阶段对应的一些好的书籍简单介绍介绍。

Python的用途十分广泛,不同的程序员将其用于不用的领域,不同的程序员将自己的代码打包成库,供其他程序员使用,从而少造轮子,各种库的使用,加之Python本身的灵活性、易读性,易写性,使用的人越来越多,tiobe统计编程语言的使用率如下:Python在一年之间使用排行榜中上升了3名,而且各大公司招聘员工的时候如果能掌握Python,肯定是一个加分项,因为Python在文本处理,小程序的写作方面具有太强的优势,前段时间一个朋友让帮忙改下他们公司logo的颜色,第一个想到的就是用Python,女票让我帮她预处理大数据,第一个想到的仍然是Python等等。

当然并没有说其他语言不好,也不是为了讨论哪种语言更好,只是Python确实是一门会让人幸福的语言,下面粗浅的说说我对Python学习过程中的境界划分以及推荐书籍。

第一个阶段:初级,掌握Python的语法和一些常用库的使用

这里首先推荐廖雪锋在网上的书籍,有Python2.7和3.0版本的,这本书适合于重头开始一直读完,作为一个开发人员,除了基本的语法,这本书里面提到了一些其他的常用的库,看了廖老师写的很多东西,感觉他的思路,以及写博客写书的高度,概括性,原理性都十分好,这本书读完之后,相信就可以动手写很多东西了,可以尽情的玩转Python解释器了。

另外还有一本书《Python参考手册》,这本书也十分的有用,关于Python的方方面面基本都囊括在内,可以作为一本Python字典来查询使用方法,十分好用。掌握一门语言最好的方法就是用它,所以我觉得边学语法边刷Leetcode是掌握Python最快的方式之一。我也会在腾讯课堂看《深入浅出带你学Python》的视频课,这个的基础讲解得非常的透彻。

很多只需要将Python作为脚本或者就是写一些小程序处理处理文本的话,到这一个阶段就足够了,这个阶段已经可以帮我们完成很多很多的事情了。但是如果是一个专业学习Python的,恐怕还需要努力的升级:首先,国内的大多数人都是学习了其他语言(C,C++,Java等)之后来学习Python的,所以Python和这些语言的不同,也就是pythonic的东西需要一些时间去学习了解和掌握;另外,对于自己领域的领域的库构架的掌握也需要很长的时间去掌握;最后,如果想独立完成一个Python的项目,项目的布局,发布,开源等都是需要考虑的问题。

第二个阶段:中级,掌握自己特定领域的库,掌握pythonic写法,非常熟悉Python的特性

推荐的第一本书是《编写高质量代码--改善python程序的91个建议》,这本书大概的提了下Python工程的文件布局,更多的总结了如何写出pythonic的代码,另外,也介绍了一些常用的库。

要想深入的了解Python,有的时候看看Python的源码也是很重要的,自己通过读懂源码,来彻底的了解Python的核心机制,这里推荐《Python源码剖析——深度探索动态语言核心技术》,这本书并没有看完,只是在需要深入了解Python某个功能或者数据结构的时候看看相关章节,也觉得受益匪浅。

自己领域的书籍和资料也肯定很多,比如web开发的构架都有很多,只有了解熟悉了所有构架,在选择的时候才能衡量利弊,然后深入掌握某些构架。

这个阶段过后,可以写出pythonic代码,可以通过PEP8的检查,可以为开源社区做贡献了,可以将一个Python文件写的十分好,但是如果要用Python开发一个大型项目,还是有很多东西需要掌握的,比如项目的文档,项目的发布,下载,项目性能和案例等等。

第三个阶段:高级,从整个工程项目着眼,考虑document,distribution,性能优化等

目前只看了一本书《the hacker guide to python》,看的是英文版的,这本书对项目的布局,文档,性能,发布等做了很多详细的介绍,我觉得写的还是很不错,只不过本人还需要再读几遍。

对于大多数人来说,很难有机会从头开始一个有意义的大型工程项目,所以自己可以用Python实现一些简单的功能,简单的项目,这个灵感可以去知乎或者quora搜索,很多前辈都分享了自己的经验。

从大局入手,规划好项目的布局,设定好相应的文档说明,提供工程下载安装的方法,带几个demo,每个类,每个函数,每行代码都反复推敲,写出pythonic的程序,相信这时候Python于我们便是信手拈来了!

总结

本文只是我认为的学习Python的三种境界,以我粗浅之眼光,肯定有太多太多的不足,而且自己也就是一个介于初级和高级Python程序员的水平,写这个文章,也算是给自己设立的一个目标吧。

不向静中参妙理,纵然颖悟也虚浮 立乎其大 和而不同 古之成大事者,不惟有超世之才,亦必有坚韧不拔之志

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程
    +关注

    关注

    88

    文章

    3439

    浏览量

    92377
  • python
    +关注

    关注

    51

    文章

    4674

    浏览量

    83464

原文标题:Python大侠眼中的学习Python的三种境界

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    关于蓄电池的三阶段充电疑点

    段式充电:第一阶段叫恒流阶段(即主充),第二阶段叫恒压
    发表于 07-07 22:21

    stm32 三个文件夹学习小结

    stm32 三个文件夹学习小结,包括自己对寄存器,时钟,简单的编程思想的理解。可能你自己看过了三个文件夹,再看看这个东西,会有一点帮助。半年前写的,高手勿喷。不好意思刚才忘记添加附件了。。。
    发表于 09-01 14:54

    因特网发展的三个阶段

    因特网的基础结构大体上经历了三个阶段的演进。但这三个阶段在时间划分上是有部分重叠的,这是因为网络的演进是逐渐的而不是在某个日期突然发生了変化。第一
    发表于 08-09 09:12

    python要学哪些内容?

    知识学习内容包括:面向对象开发、Socket网络编程、线程、进程、队列、IO多路模型、Mysql数据库开发等。阶段:前端开发Python全栈开发与人工智能之前端开发知识
    发表于 03-06 16:08

    嵌入式学习三个阶段详解

      嵌入式可以简单分为硬件与软件,然而其中的知识体系却是异常的庞大,这也是众多新手望而却步的一原因,那究竟要如何才能成为一名嵌入式大咖呢?今天和大家聊一聊嵌入式学习路线,大致分为三个阶段
    发表于 07-06 03:33

    嵌入式开发学习三个阶段

    哪些,嵌入式可以简单分为硬件与软件,然而其中的知识体系却是异常的庞大,这也是众多新手望而却步的一原因,那究竟要如何才能成为一名嵌入式大咖呢?嵌入式开发要学什么,大致分为三个阶段:基础篇、进阶篇、大咖篇
    发表于 11-23 09:28

    华为5G的三个战略阶段

    三阶段“基于独立组网的5G核心网关键技术与业务流程测试”。这三个阶段测试,华为均以100%通过率顺利完成。除了大关键技术之外,无数用户要组成网络,事情自然少不了。比如,分配传输资源
    发表于 04-22 21:33

    嵌入式学习步骤的三个阶段

    [嵌入式系统无疑是当前国内最热门的技术之一,但是该如何来学好嵌入式系统?好的学习方法是前提,但正确的学习步骤依然不可缺少,分享一下比较主流的嵌入式学习步骤,对不知该从哪里开始学习和入手
    发表于 01-14 07:25

    锂离子电池进行充电时有哪三个阶段策略?为什么需要进行3阶段

    锂离子电池进行充电时有哪三个阶段策略?为什么需要进行3阶段
    发表于 03-11 07:10

    关于Python编程入门系列教程》说明及教程汇总

    3.6.5的开发环境),结合Python的基础语法以及相应的功能库,实现游戏/项目的开发设计。内容上选取了Python 中Turtle绘图、Gui图形界面设计以及数据处理三个方向,由浅入深,有助于初学者了解
    发表于 06-23 10:10

    【内附电子书】Java学习路线图,其五必经阶段

    上手了第三个阶段 -web开发阶段1.html2.css3.java这三个部分是进行web开发的必须技术一定要好好学习,毕竟互联网在我们的生
    发表于 11-10 10:50

    嵌入式初级工程师全套学习资料包(第三阶段

    本期资料分享为linux开发全套学习资料包,整理了嵌入式学习必备资料和工具包,大家可以配合下方的三个学习阶段路线进行
    发表于 08-30 10:53

    自行开发从站节点应用程序的三个阶段

    本系列技术文章的第1部分介绍了用于C2000™微控制器(MCU)的EtherCAT从站堆栈解决方案的市场机遇,并介绍了从站堆栈开发快速入门的三个阶段指南。第2部分详细说明了TI C20
    发表于 11-09 07:24

    如何学习PythonPython编程环境搭建详细说明

    本文档的主要内容详细介绍的是如何学习PythonPython编程环境搭建详细说明。
    发表于 04-26 08:00 25次下载
    如何<b class='flag-5'>学习</b><b class='flag-5'>Python</b>?<b class='flag-5'>Python</b>编程环境搭建详细说明

    10种聚类介绍Python代码

    分享一篇关于聚类的文章,10种聚类介绍Python代码。
    的头像 发表于 07-30 10:25 1510次阅读