我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功

写在开头

我是一个 19 年渣渣专科毕业生, 在转 Python 之前 是在一家 ERP 软件公司做实施。

相信每个转 IT 的人, 大部分是兴趣驱动。然而我并不是, 只能说是不反感。一开始接触编程, 是一位同事,他会 java ,也会一点前端。 印象最深刻的一次,有一次,他自己搭建了一个网站,然后把公司的一些报表数据放到这个界面上展示出来。当时就感觉,学习编程真酷。而后不知道是在哪看到的一篇文章, 大意就是如果随便换一个人, 接手你的工作, 你觉得需要多久? 这篇文章,启发了我,让我不禁思考,以后的路该何去何从?

在这家公司大概干了有大概八个月之久,经过一番思想斗争之后,终于在20年十月份,我决定辞职了。这是我的第一份工作,一年不到,很多人觉得我很疯狂,包括我的同学,我最好的朋友,因为我要开始学习 编程,学习Python。这是他们想都不想敢的事。

我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第1张图片

在家看网上的 Python 入门文章和入门视频,每天都挤出时间来学习,跟着教程学习了大概1个月,我就尝试自己接一些小需求来做,例如爬取一些公开数据、编写 Python 程序等。那时候两三天才能完成任务,得到的报酬通常是 30~300,有时甚至靠回答群友的问题领几块钱小红包。

后来随着时间的推移,大概过了4个月,我觉得我可以算得上初级爬虫工程师了,接的都是1000以上的兼职。但是接兼职已经无法满足自己的技术增长需要了,于是我在智联还有前程无忧找了一些招爬虫或 Python 研发的公司,投了简历。三天内,接到了 5 个面试,然后也顺利找到了一份工作。

一、Python基础阶段

**技能树:**掌握python脚本、python界面编程能力、数据库、基本爬虫、多线程多进程开发能力,可以胜任基本的python开发工作。

知识点细化:

  1. **数据的存储:**Python概述、进制以及进制转换、原码、反码、补码、第一个Python程序、终端读取与打印等。

  2. **运算符与表达式:**关键字和标识符、算术运算符、python数据类型、赋值运算符、运算符、复合运算符、条件控制语句(if…else…)、逻辑运算符等。

  3. **循环:**循环语句之while、循环语句之for、break与continue语句等。

  4. 基础数据结构:Number与数学函数操作、String(查找,替换,下标索引、列表(常用)、元组、字典(常用)、set集合、迭代器与生成器(常用)、函数概述等。

  5. **函数:**函数的调用、简单函数的定义、函数的返回值、传递参数、关键字参数、默认参数、不定长参数、匿名函数、装饰器、偏函数、回调函数、变量的作用域、递归函数、目录遍历、递归遍历目录、栈模拟递归遍历目录(深度遍历)、队列模拟递归遍历目录(广度遍历)等。

  6. **模块:**模块概述使用标准库中的模块使用自定义模块name属性包的概述安装第三方模块virtualenv与时间相关模块。

  7. 面向对象编程**:面向对象思想、类与对象、类的方法与属性、构造函数与析构函数、self的使用、重写__ repr__ 与str** 函数、访问限制等。

  8. **继承、封装、多态 :**单继承的实现、多继承的实现、函数重写、人开枪射击子弹小案例、多态、对象属性与类属性、类方法与静态方法等。

  9. **面向对象高阶:**动态添加属性方法、property、运算符重载、发邮件与发短信等。

  10. **文件操作与异常处理:**StringIO与BytesIO、文件的管理操作、文件读写(csv、txt)操作、异常处理等。

  11. **高阶函数与测试:**调试(打印、断言、logging、pdb)

  12. **排列组合与正则表达:**破解密码(排列、组合、排列组合)、正则表达等。

  13. **网络编程:**TCP/IP简介、TCP编程、UDP编程等。

我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第2张图片

上述是我学习python基础学习的教程和提炼的学习大纲,如果你有需要我也可以分享出来。
我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第3张图片

二、Linux和数据库阶段

**技能树:**掌握Linux操作系统管理技术,可以搭建几乎所有Linux环境服务器。

知识点细化:

  1. **Linux操作系统:**常见操作系统、操作系统发展历史、系统的使用、Linux版本、Linux应用领域、虚拟机与Vmware的安装、Linux版本与Ubuntu 16.04、配置自己的Linux系统、编程IDE的安装、apt-get安装软件包。

  2. **文件系统与用户管理:**目录访问、文件与目录的管理、文件的权限、用户管理。

  3. **文本操作命令:**文本命令、文本编辑器Vi/Vim。

  4. **网路命令、进程管理与服务配置:**网络管理命令、系统目录、重要系统文件、设置开机启动与登陆启动、IP配置、服务的启动停止、防火墙配置。

  5. **Shell编程与bash、源文件编译:**基础IO操作、流程控制、定义变量与环境变量、脚本传参、定时任务、定时系统操作。

  6. **版本控制:**Git的安装与配置、GitHub的注册与使用、Clone与Fork、Git常用命令、标签、分支与源、多人协作开发。

  7. **MySQL基本使用:**MySQL的安装、MySQL简介、MySQL基本命令脚本、MySQL与Python的交互。

  8. **MongoDB的基本使用:**MongoDB安装、MongoDB的基本操作。

  9. **Redis的基本使用:**Redis安装、Redis的基本操作、Redis的数据类型、Redis的备份与恢复。

我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第4张图片

  1. 上述是我学习Linux基础学习的教程和提炼的学习大纲,如果你有需要我也可以分享出来。我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第5张图片

三、Python web开发

**技能树:**掌握Python后端框架,解决前后端Web开发问题。

知识点细化:

  1. **HelloDjango:**BS/CS,MVC/MTV、Django请求流程、Admin管理。

  2. **Models:ORM、**模型字段属性、CRUD、聚合函数,F,Q对象。

  3. **Models&Templates:**模型对应关系、模板加载、静态资源、模板语法。

  4. **Views:**路由规则、反向解析、请求与响应、会话技术cookie,token,ses-sion、文件上传。

  5. **Advanced:**验证码、分页器、类视图、中间件、日志、缓存、信号、Cerlery、用户权限,用户角色。

  6. **RESTful:**REST概念、HelloREST、数据序列化、请求与响应、视图,转换器、关系,超链接、认证和权限。

知识点细化:

  1. **HelloFlask:**Flask介绍、Flask请求、Flask MTV拆分、Flask-Script。

  2. **Views:**Flask Blueprint、路由规则、错误处理、请求与响应。

  3. **Templates&Models:**静态资源、模板加载、模板语法、ORM、Flask-SQLAlchemy。

  4. **Modesl:**Flask-Migrate、CRUD、模型关系、反向引用。

  5. **Extension:**Flask-Cache、Flask-Login、Flask- RESTful、Flask- Bootstrap、Flask-Upload。

  6. **Program:**需求分析、项目设计、基础框架搭建、建模。

我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第6张图片

四、Python爬虫阶段

**技能树:**掌握分布式多线程大型爬虫技术,能开发企业级爬虫程序。

  1. **多线程原理:**同步与异步、串联与并发、线程、开辟一个线程、线程安全与线程锁、多线程队列。

  2. **协程:**线程的局限、协程的定义与原理、协程的实现。

  3. **爬虫的概念及相关工具:**爬虫的概念及作用、HTTP协议原理、工具的安装、使用。

  4. **Python http libs:**urllib的使用、示例requests库的使用、bs4库的使用、xpath语法。

  5. **爬虫实战:**使用requests编写-个简单爬虫、改造requests爬虫为多线程版、利用redis改造多线程版爬虫至分布式。

  6. **scrapy框架:**scrapy安装、创建项目、创建spider文件,编写parse方法、scrapy子命令、运行scrapy爬虫程序、命令行传递参数、进一步解析二级页面、parse方法之前传递参数、导出json、Csv格式的数据、scrapy爬虫的状态保存、item的定义、item的使用、pipeline的使用、使用pipeline将items存储至MySQ、Lscrapy整体架构、downloadermiddleware、使用downloadermiddleware实现IP代理池、spidermiddleware、scrapy插件、scrapy-redis。

  7. **量化交易:**自动化交易理论、Python量化交易框架。

我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第7张图片

五、Python机器学习阶段

**技能树:**掌握Python数据挖掘分析,入门人工智能。

知识点细化:

  1. jupyter入门:jupyter软件安装、jupyter入门、numpy学习。

  2. **pandas:**pandas入门、pandas-Series、pandas数据丢失、pandas索引、pandas数据处理、基于Pandas的人脸识别技术。

  3. **scipy:**scipy学习

  4. **matpoltlib:**数据可视化的概念、可视化图表的绘制、动画及交互渲染、数据的合并与分组。

  5. **KNN:**临近算法、预处理、KNN相关函数。

  6. **线性回归与逻辑斯蒂回归:**线性回归、逻辑斯蒂回归。

  7. **决策树与贝叶斯:**贝叶斯学习、决策树学习。

  8. **SVM与K均值聚类:**SVC学习

  9. Kmeans: Kmeans学习

  10. **机器学习框架TensorFlow:**机器学习、权重分配与优选方案、深度学习、自动化神经网络、AI网络的描述。

  11. **自然语言处理与社交网络处理:**文本数据处理、自然语言处理及NLTK、主题模型、LDA、图论简介、网络的操作及数据可视化。

我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第8张图片

编辑搜图

学习体会

最后分享一点,我自己的学习心得和体会。

1.有计划的学习和心态
如果遇到某些东西中断了学习,那就想办法恢复学习状态,不轻易放弃。后面一定会看的到自己的成长。

2.细化目标
在学习过程中,最好能够制定比较细小的目标,然后不断更新,像做一个web网站、开发一个小游戏之类的中期目标,个人认为并不适合每一个初学者。

根据自身的学习程度和技能水平不断调整,例如在初期设定“搞清楚is和==之间的关系”、“学习模块调用”,到后期调整为“写一个小型爬虫”、“清洗并分析一组数据”之类的目标。

3.多练多看
“练”是指在学习过程中要勤于动手写代码,在学习初期,哪怕是照抄老师的代码也可以加深对程序的理解。

“看”是指要善于阅读和学习其他人优秀的代码,这样才有可能慢慢体会到python真正的精髓所在。

我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第9张图片

上述是我对标学习的项目实战教程和对应的代码,如果你有需要我也可以分享出来。我专科毕业,毕业4K飙升15K,再回首终于明白了没有人能随随便便就成功_第10张图片

你可能感兴趣的:(Python,学习分享,知识点,计算机,互联网,程序员,python,转行)