Python修炼之路-按部就班

        Python已经演变为一个庞大的生态系统,因为其底层所有用c写成,并且所有开放源码,所以几乎能够完成其它任何编程语言能干的事情。python虽然简单,但要成为高手也非一日之功。如何经过平常的功课,逐步进行修炼,我的的一些总结,分享以下,不对之处,欢迎指正。python

        语言:从某种意义上说,python不像是一门编程语言,学习起来是很快的。但里面也有一些高深的东西如今连C++都在学习。但我的认为,使用Python的目的就是为了简单、高效,所以没必要过于追求奇巧,在效率、特殊结构、算法上去过度纠结,能使就好。linux

        编辑器:首推Sublime Text,彻底符合简单高效跨平台的原则,是必须掌握乃至精通的开发者“神器”。虽然基础界面使用C++写的,可是其插件开发和运行环境都是以Python为基础,对Python的编辑、开发、运行也支持的很是好,还可使用Python快速扩展出插件,很是方便。可是刚开始的一些习惯跟别的软件不太同样,须要一个适应过程。
git

        pip包管理:能够快速安装各类python扩展包,谁用谁知道。在linux上,只需sudo apt-get install python-pip就能够装上,而后sudo pip install xxx就能够装上须要的组件,效率真是高啊。固然,库里没有的软件,下载来sodu python setup.py install也不难。github

        py高级图形:老是用控制台的,老是感受不过瘾,固然python的图形能力也是很强悍的,并且也不是想象中的“脚本语言用图形会很慢”。事实上,python上面的图形界面已经有gtk/wxpython/tkinter/qt等多种支持,不只速度很好,并且绘制效果至关精美。并且,pyQtGraph能够绘制精细的统计图表,OpenCV这一计算机视觉的知名支持库也有python的版本,包括OpenGL三维渲染/OpenCL高性能计算之类的库也都能经过python调用。算法

        网络服务:django不用说了,估计用的人很多了。Tornado也是一个被知名互联网企业采用的高性能Web服务框架。Google当年的创始人也是python起家的,可能不少人并不知道。google网站的大部分服务仍然是使用python开发的。python的网络能力,能够说是“运用之妙,存乎一心”(不要学坏呀哈!)。django

        python源码:蛋吃多了,就总想知道鸡长啥模样,这是程序猿和攻城狮的通病。想要了解python的运做机制,推荐看一看陈儒编写的《python源码剖析》,这应该是中国人在语言级别写的第一本到如此深度的书了(请恕本人孤陋寡闻!),哪些搞不懂汇编、编译器原理的童鞋,看看这个也基本能一窥编译器、字节码、虚拟机的端详。固然,到了这个份儿上,书的内容已是见仁见智了,能理解到什么程度,千万不要为难本身,保重啊!
编程

        无限扩展:python这一堆源代码,讲“扩展”好像说不上,由于任何增长的模块都是内核级的,方法也有不少:一、固然是建立一个Python的Class了,import XXlib 就可使了;二、不用编译源码,经过扩展SDK建立一个扩展包,能够把之前的c/C++库Export到python中使用,这是推荐的方法,pyQt之类都是这样的路数;三、把python解释器链接到本身的程序中,经过脚本操控主程序的功能,pythonQt能够直接将C++的对象映射到python中访问(有点过于强悍了吧?);四、对源码精通的,能够直接把c的库编译了,跟源码编译上去,跟本身的库就没啥两样了。网络

        独立运行:跟那些复杂的安装程序说掰掰吧。python的脚本也能够打包运行的,使用py2exe便可,很是轻巧、几乎没有平台依赖性。不少小巧的工具软件都是这样作出来的,可能不少人没有意识到,python还能够这么玩呐!
框架

        数据分析:玩了上面的东东,若是还不过瘾,试试numpy之类的科研人员的工具,再弄出几个图表,甚至于生成几个动画,瞬间“高大上”的感受(有没有啊?),再经过rpy2(sudo pip install rpy2)调用R语言的模块,提高一下逼格!(不知道啥叫R的,看这里吧:http://www.r-project.org/ 。rpy2的鸡在这里:https://bitbucket.org/rpy2编程语言

        恭喜恭喜,你已经步入专业数据分析人员的行列了,这但是将来煊赫一时的“坑”啊!

        至此,这一“深坑”已经为本身基本挖好了。

        跳吧!不要看两边,你将融入这蓝天里!......仍是蓝海里?

        

        顺便提一句,最近几年出了个micropython(https://github.com/micropython/micropython),能够在mcu微控制器上运行,之后没准家里的电饭煲运行的是python! 肚子饿的时候,运行一段python脚本,饭就行了,而后发个消息“Hello programmer,  your FAN get ready!”。

相关文章
相关标签/搜索