方正的python学习路线
很多粉丝都在询问如何学习Python以及学到什么程度就可以就业了。
Python学习实际上并没有那么困难,难就难在一个对电脑都不怎么熟悉的人,会被各种教材中略过的「常识性」所搞得迷迷糊糊。举个例子,如果书中提到「....将这个东西推到队列中,等待后面的调度....」我估计这句话就能把初学者搞得够呛,什么是队列,什么又叫调度?
那么今天,我就将之前看的一些文章,排版从简单到难,一步一步的梳理下来,希望对粉丝有帮助。
Python基础
开发、调试、准备工具
- 开发环境下载:请直接下载python新版本,无需纠结3.0+还是,2.7。
- 编辑器1:notepad++:简单易用,有中文版,写好的代码在py环境中运行
- 编辑器2:vscode:实际上任何东西都可以在vscode上写,不过写python的话需要下载一些插件和配置
初级教程
- 廖雪峰的python教程
实际上,廖雪峰老大已经把python的全部知识都已经囊括在内了,作为基础到部分,都可以看廖雪峰老大的教程
诚然,我并不打算推荐别的教程了,因为,廖大的教程已经做到:小白化,傻瓜化,稍微有点脑子的,都能学会。
操作系统基础(非紧急)
- Linux基础教程
说真的,如果你去找工作,不会linux,那么真的是很难,学习linux的方法就是多用,因此我推荐大家可以安装:Vbox虚拟机,安装一个Ubuntu,然后开始在上面打一下Linux命令。
数据结构与算法基础(非紧急)
在此,我只列出数据结构与算法的一些目录,自行百度
- 数组
- 链表(延伸:数组和链表的差别)
- 栈,队列,哈希表
- 树
- 几大常见排序算法
- 树的遍历算法
- 广度优先算法和深度优先算法
Python进阶路线
在python进阶路线中,我将python分为「爬虫开发」以及「web开发」,这两个属于不同的大方向,在实际工作内容中,则是完全不同的编码。
但是,并不是说你学习了「爬虫开发」就不用学习「web开发」,实际上,他们两个路线会有很多很多的交集,应用场景,甚至是你做web开发的会经常被抓去写个爬虫抓数据,你做爬虫开发的也会被抓去做一下web开发,重要的原因就是:这两个方向都是关于网络的
两个路线共同要学习的知识
- HTTP 协议入门 - 阮一峰的网络日志:必须学习
- WSGI协议:python与服务器通讯的协议
以下三个跟python完全没什么关系,但是实际上,这就是作python开发必备的知识,无论是爬虫还是web开发
- HTML 教程
- CSS 教程
- JavaScript 教程
Web开发(基础)
- 廖雪峰web开发
廖大的一套web开发教程,从简单的到后的建站部署,一套俱全。
爬虫开发
- 如何入门 Python 爬虫?
这个帖子,已经完全说明了如何去开发一个爬虫,我也就不多说了,当初我也是看这里学习的。
Python实践
从初级到,大的区别就是,你「懂」怎么使用python这个工具了,但是你没有开始造轮子。造轮子这个事情,在编程行业中常见,能否造轮子很大程度上「直接决定了你这个人是否有可塑性」
我敢把话放在这里,如果一个程序员一辈子只用过工具,而没有造过轮子,那么你这辈子都只是平庸之辈!
世界上的东西早就被别人造完了,如果你想造一个别人没有的东西,那不如不做。---- @vczh
字面意思,我们通过造轮子,来学习,并且实践我们所学,并且在造轮子的过程中,获得编程中牛逼的一种能力:解决问题的能力
一些有实战意义的轮子
- Django搭建博客
- 分布式爬虫
- 一起写一个web服务器系列:「一起写一个 Web 服务器(1) - Python - 伯乐在线」「一起写一个 Web 服务器(2) - Python - 伯乐在线」「一起写一个Web服务器(3) - Python - 伯乐在线」
学到什么程度可以用Python找工作
实际上,这个因人而异,有些人学2-3个月就可以找到工作了,有些人学习python一年半载也找不到。
其中的重点,当然就是「你学得怎样」,检验你学得怎样的标准并没有,我只能说一说我个人的一些检验标准,仅供参考
- 读懂Flask源码,并且自己开发出一个简易的web框架
不要觉得读懂Flask源码是一件多么可怕的事情,实际上读源码有很多的方法,这就考验了你如何解决问题的能力。
读源码,可以直接跑去读别人写的代码,聪明一点的做法就是先去搜索有没有人对源码进行解读过,然后读别人解读过的源码,知道其思想以后,再去看Flask的代码。
当我们读懂Flask源码的时候,我们怎么证明自己能读懂了呢?答案就是:自己造一个简易的Web框架
干货地址:flask 源码解析:简介 - Python - 伯乐在线
- 仿站
使用python模仿2,3个现有的站点,你基本上对于数据库,部署,服务器,python编程都有了非常全面的了解。那么你就可以开始去找工作了。
比如,知乎,电商平台,豆瓣。网上有很多教程,在这里就不一一介绍。
- 造一个分布式爬虫框架
干货地址:分布式爬虫
Python学习时间
个月:完成本文Python基础部分的学习
第二个月:完成Python进阶路线
第三个月:开始造轮子
第四个月:造轮子
第五个月:造轮子
第六个月:造轮子
第七个月:尝试找工作
关于写简历
方正:如果在简历上这样写,能找到工作吗?,我在这篇文章里有比较详细的解答
(完)
更多编程知识,请关注 @方正
相关文章