到学习路线,入门是基础课。基本上,熟练掌握Python入门指南即可。
其次,要想更进一步,需要熟读官方文档,掌握各种内置函数、标准库等知识。关于两者,英文不好的鱼油们可以关Python中文官方文档板块,也欢迎有余力的鱼油加入我们的团队。关于Python的奇淫技巧,可以看《Effective Python:编写高质量Python代码的59个有效方法》这本书。
再次,在进一步发展之前,强烈建议先get几个附加技能,以避免以后可能遇到的不必要的大坑。
Linux
开发利器。有兴趣的鱼油可以安装Linux系统后,移步Linux入门教程。
Vim
编程利器。有兴趣的鱼油可以移步小甲鱼的VIM魔鬼训练营。
Git
全世界最大的开源代码托管平台。有兴趣的鱼油可以移步Git实用教程。
English
基础技能,无需多言。
最后,谈到发展方向,就楼主所知的有以下几个方向。
Web开发
如Flask、Django、Tornado等等,需要良好的文档阅读能力。
推荐书籍: 《FlaskWeb开发:基于Python的Web应用开发实战》、《The Django Book》等。
渗透测试
陡峭的学习曲线,需要其它如汇编、计算机网络、数据结构等基础知识。推荐书籍:《Python灰帽子》、《Python黑帽子》等。
数据挖掘/大数据
据说还需要学习其它语言,如R语言等。推荐从Scrapy入手。这里有张图,我认为规划的最好:
科学计算
了解不多_ … 推荐书籍:《Python科学计算》。
机器学习
了解不多_ … 推荐书籍:《机器学习实战》。
软件开发
如Tkinter、wxpython、PyQt、PyGTK+等等。这些图形界面库各有优缺点。其中PyQt普及程度要搞一些,比如说有道词典Linux版、深度截图用的就是PyQt5。有兴趣的鱼油可以移步淘贴PyQt。
软件测试测试
如Selenium、QTP等自动化测试工具。有兴趣的鱼油可以移步自动化测试框架Selenium。推荐书籍:《Selenium 2自动化测试实战——基于Python语言》。