学习Python的三种境界

前言

王国维在《人间词话》中将读书分为了三种境界:“古今之成大事业、大学问者,必通过三种之境界:‘昨夜西风凋碧树,独上高楼,望尽天涯路’。此第一境也。‘衣带渐宽终不悔,为伊消得人憔悴。’此第二境也。‘众里寻他千百度,蓦然回首,那人却在灯火阑珊处’。此第三境也。我从入门Python到如今也没有多少时间,因此写如此大的一个题目一定会引起各类批判,固然我没有想造一个大新闻,只是想根据本身的学习历程作一个简单的总结,同时将这三个阶段对应的一些好的书籍简单介绍介绍。python

正文

Python的用途十分普遍,不一样的程序员将其用于不用的领域,不一样的程序员将本身的代码打包成库,供其余程序员使用,从而少造轮子,各类库的使用,加之Python自己的灵活性、易读性,易写性,使用的人愈来愈多,tiobe统计编程语言的使用率以下:Python在一年之间使用排行榜中上升了3名,并且各大公司在招聘员工的时候若是能掌握Python,确定是一个加分项,由于Python在文本处理,小程序的写做方面具备太强的优点,前段时间一个朋友让帮忙改下他们公司logo的颜色,第一个想到的就是用Python,女票让我帮她预处理大数据,第一个想到的仍然是Python等等,固然并无说其余语言很差,也不是为了讨论哪一种语言更好,只是Python确实是一门会让人幸福的语言,下面粗浅的说说我对Python学习过程当中的境界划分以及推荐书籍。
程序员

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

  • 这里首先推荐廖雪锋在网上的书籍,这是Python2.7版本的,这本书适合于重头开始一直读完,做为一个开发人员,除了基本的语法,这本书里面提到了一些其余的经常使用的库,看了廖老师写的不少东西,感受他的思路,以及写博客写书的高度,归纳性,原理性都十分好,这本书读完以后,相信就能够动手写不少东西了,能够尽情的玩转Python解释器了。
  • 另外还有一本书《Python参考手册》,这本书也十分的有用,关于Python的方方面面基本都囊括在内,能够做为一本Python字典来查询使用方法,十分好用。
  • 掌握一门语言最好的方法就是用它,因此我以为边学语法边刷Leetcode是掌握Python最快的方式之一。

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

第二个阶段:中级,掌握本身特定领域的库,掌握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程序员的水平,写这个文章,也算是给本身设立的一个目标吧。性能优化

相关文章
相关标签/搜索