导图社区 Python学习之路借鉴
不知道怎么学习Python,报机构怕被割韭菜,那么这里有如何学习Python的方法,可以借鉴一下哈
编辑于2021-10-28 05:13:14Python 系统化学习
路线特点
最新、最全的完整学习路线,一条龙服务!
明确目标、学习建议、知识点、优质资源推荐(视频、书籍、文档、项目、工具等)
最好的投资,就是投资自己
前言
1、在这个碎片化的学习时代,获得的知识方式也会更加的多样化,获得知识的成本也比较低,在这种环境中,是否有这样一种困惑呢?有时看了一些内容或者几篇文章,但却没有感觉收获到东西。这其实就是因为我们所掌握的知识都是碎片化的,其中可能并没有多大的联系,才导致有这种现象的发生。我们并不是知识不丰富,而是缺少 一种系统化学习的方式。 2、系统化学习可以减轻机械记忆、重复学习带来的压力,还可以貌似把许多无关的人和事联系起来,得到一个更为整体的图景。掌握系统化的学习,并使学习整体化,可以帮自己和环境带来难以想象的改变。
阶段1:Python入门
学习目标
搭建开发环境,快速上手。
30天学会Python基础语法
前期准备
开发环境搭建是第一步,万事开头难,耐心配置好本地开发环境,也方便我们后续的学习,推荐两种配置组合。
Anaconda+Jupyter:https://mp.weixin.qq.com/s/ghKGVutz9RQ4fMGJDHWtww
Anaconda+Vscode:https://www.baidu.com/s?wd=vscode%20anaconda
说明1:Anaconda管理python包方便,vscode适合喜欢ide风格的小伙伴,调试方便。jupyter适合喜欢轻便的交互式风格的小伙伴。两者都是我常用的搭配。
说明2:不推荐pycharm,太大,配置也相对麻烦,再找个激活码,折腾来折腾去的。
好记性不如烂笔头,学编程的过程中遇到的问题、学习的知识点、一些感悟总结,都可以记下来。
推荐软件 Typora:https://www.typora.io/
脑图工具 Xmind:https://www.xmind.cn/
推荐使用 Markdown 语法编写:https://www.runoob.com/markdown/md-tutorial.html
想学好编程就要勤动手,一定要多写代码,哪怕手打去抄代码也行,要一步一步尝试自己写代码,切记。
选视频和资料的小技巧:货比三家,看评论区,找一些经典、不过时的资料。当然,为了省事,可以看我下面的良心推荐。
初学编程,一丢丢基础都没有的小伙伴,入门可能需要一个月的过程,不要灰心,循序渐进,不要着急。
python编程基础(30天)
知识点
变量和简单数据类型
变量
数
注释
字符串str
列表list
元组tuple
集合set
字典dict
判断与循环
if/else判断
for循环
while循环
函数
普通函数
函数传参
作用域
闭包
匿名函数
生成器函数
装饰器
正则表达式
compile
match
search
文件I/O
文件读取与操作
open函数
指针
w/r/a/b各种模式的区别
with上下文语法
异常处理
数据存储
pickle模块
json模块
ini格式文件处理
csv格式文件处理
类
面向对象基础知识
面向对象的三要素
类和实例
类变量与实例变量
类方法与静态方法
访问控制与属性装饰器
继承与多态
面向对象高级知识
属性查看
实例化、可视化和hash
运算符重载
容器化
反射
上下文管理
描述器
模块化
模块导入
打包分发
学习建议
持续学习,坚持住!
别只光顾着看,一定要动手写代码,完成数据或视频的课后题。
动手写代码,是指用键盘多敲代码。
资源
视频
零基础入门学习Python:https://www.bilibili.com/video/BV1xs411Q799
书籍
Python编程,从入门到实践(第2版):https://book.douban.com/subject/35196328/
文档
菜鸟教程Python:https://www.runoob.com/python3/python3-tutorial.html
廖雪峰Python:https://www.liaoxuefeng.com/wiki/1016959663602400
阶段2:巩固基础
学习目标
学编程,计算机基础要学好。
数据结构,是程序员的内功,也是面试找工作必过的一关。
通过学习计算机基础,可以帮助我们对编程有个更深刻的认识。
计算机基础(30天)
知识点
操作系统
进程、线程
进程 / 线程间通讯方式
进程调度算法
进程 / 线程状态
死锁
内存管理
计算机网络
HTTP / HTTPS 协议
网络模型
UDP / TCP 协议
网络安全
域名解析
学习建议
巩固基础,可以看一些计算基础知识,比如操作系统、计算机网络。
内容或许会枯燥一些,但可以结合一些有趣的视频或者图书,比如《计算机科学速成课》,提高自己的兴趣。
这部分知识,不必强学硬记,如果时间不够充裕,每个知识点有个印象就行。
这部分知识,不必强学硬记,如果时间不够充裕,每个知识点有个印象就行。
资源
视频
计算机科学速成课:https://www.bilibili.com/video/BV1EW411u7th
计算机网络微课堂:https://www.bilibili.com/video/BV1c4411d7jb
清华操作系统原理:https://www.bilibili.com/video/BV1uW411f72n
书籍
操作系统
操作系统真相还原
深入理解计算机系统
现代操作系统
计算机网络
图解TCP/IP
图解HTTP
计算机网络-自顶向下方法
数据结构与算法(30天)
知识点
时间 / 空间复杂度分析
数据结构
数组
字符串
队列
栈
链表
集合
哈希表
二叉树
算法
排序
双指针
查找
分治
递归
回溯
动态规划
贪心
位运算
DFS
BFS
图
学习建议
数据结构与算法,是程序员的内功。
初学者推荐《剑指offer》,题目简单,上手快。
有一定基础建议刷Leetcode,刷个200道,找工作基本没啥问题。
资源
在线教程
Leetbook:https://leetcode-cn.com/leetbook/
刷题网站
Leetcode:https://leetcode-cn.com/
牛客网:https://www.nowcoder.com/activity/oj
刷题笔记
https://mp.weixin.qq.com/s/cb2BdbmjEHw_Pr2WLrpRug
https://github.com/Jack-Cherish/LeetCode
https://cuijiahua.com/blog/2018/02/basis_67.html
书籍
算法图解(适合入门):https://book.douban.com/subject/26979890/
剑指 Offer:https://book.douban.com/subject/27008702/
数据结构与算法分析:https://book.douban.com/subject/1139426/
视频
浙大数据结构:https://www.bilibili.com/video/BV1JW411i731
leetcode真题解析:https://www.bilibili.com/video/BV1a54y1b74k
阶段3:开发基础
学习目标
面向薪资编程,掌握开发过程中需要掌握的小技能
Git(3天)
知识
工作区
分支
代码提交、推送、拉取、回退、重置
分支操作
代码合并、解决冲突
标签
cherry-pick
学习建议
最常用的就是四个:
git add
git commit -m
git push
git pull
资源
文档
GitHub 官方文档:https://docs.github.com/cn
菜鸟Git教程:https://www.runoob.com/git/git-tutorial.html
廖雪峰Git教程:https://www.liaoxuefeng.com/wiki/896043488029600
视频
5h打通Git全套教程:https://www.bilibili.com/video/BV1vy4y1s7k6
游戏
Learning Git Branching:https://learngitbranching.js.org/?locale=zh_CN
Linux(7天)
知识
Linux 系统安装
环境变量
文件管理
用户管理
内存管理
磁盘管理
进程管理
网络管理
软件包管理
服务管理
日志管理
Linux 内核
常用命令
常用环境搭建
Shell 脚本编程
VIM 的使用
学习建议
Linux最常用的一些指令和工具要掌握好。Linux是做程序员之后,经常使用的开发环境。
Linux指令不用死记硬背,经常使用Linux就好了。
最开始不习惯无界面的Linux,可以使用Ubuntu作为过渡。
资源
视频
2021 韩顺平 一周学会Linux:https://www.bilibili.com/video/BV1Sv411r7vd
书籍
鸟哥的 Linux 私房菜:https://book.douban.com/subject/30359954/
文档
Linux 工具快速教程:https://linuxtools-rst.readthedocs.io(基础、工具进阶、工具参考)
菜鸟Linux教程:https://www.runoob.com/linux/linux-tutorial.html
社区
Linux 中国:https://linux.cn/
工具
Linux 命令搜索:https://wangchujiang.com/linux-command
Linux 命令大全手册:https://www.linuxcool.com/
MySQL 数据库(7天)
知识
基本概念
MySQL 搭建
SQL 语句编写
约束
索引
事务
设计数据库表
性能优化
学习建议
数据库sql指令要学习,也是多动手。
记不住一些指令也没关系,现查就行,用多了就好了。
资源
视频
老杜 - mysql入门基础 + 数据库实战:https://www.bilibili.com/video/BV1Vy4y1z7EX(较新、内容相对精炼,有习题)
书籍
高性能MySQL:https://book.douban.com/subject/23008813/
在线练习
SQL 自学网:http://xuesql.cn/
SQL 在线运行:https://www.bejson.com/runcode/sql/
文档
SQL 菜鸟教程:https://www.runoob.com/sql/sql-tutorial.html
MySQL - 菜鸟教程:https://www.runoob.com/mysql/mysql-tutorial.html
阶段4:兴趣选型
学习目标
python只是一个编程语言,还需要根据自己喜欢的方向,进一步学习。
选择自己喜欢的方向,深入学习,以兴趣点出发,学起来事半功倍。
这里的内容,不用都掌握,根据自己喜欢的方向,选择即可。
人工智能(90天)
知识
机器学习
数据预处理
数据清洗
数据变换
特征工程
特征选择
特征融合
算法模型
监督学习
分类
K-近邻算法
决策树
朴素贝叶斯算法
Logistic 回归
SVM 支持向量机
CART 分类树
Softmax 回归
回归
线性回归
局部加权线性回归
CART 回归树
集成学习
Bagging
Boosting
随机森林
AdaBoost
GBDT
XGBoost
无监督学习
聚类
K-means
层次聚类
DBSCAN
模型评估
准确率
召回率
P-R 曲线
ROC
AUC
MSE
深度学习
深度学习基础
预处理&数据增强
图像裁剪
中心裁剪
随机裁剪
随机长宽比裁剪
翻转和旋转
概率水平翻转
概率垂直翻转
随机旋转
图像变换
Resize
标准化
填充
灰度化
线性变化
放射变换
Tensor
层次结构
输入层
卷积层
标准卷积
空洞卷积
分组卷积
可变形卷积
可分离卷积
激励层
sigmoid
tanh
ReLU
Leaky ReLU
ELU
SELU
池化层
平均池化
最大池化
随机池化
全局平均池化
上采样层
双线行插值
转置卷积(反卷积)
反池化
全链接层
损失函数
zero one loss
cross entropy loss
mse loss
logistic loss
focal loss
center loss
wing loss
dice loss
hinge loss
arcface loss
优化算法
BGD
SGD
MBGD
Momentum
RMSProp
AdaGrad
Adam
其他
权重 w 初始化
零初始化
随机初始化
Xavier 初始化
He 初始化
预训练初始化
学习率 alpha 调整
指数衰减
根号衰减
分段离散衰减
手动调整衰减
后处理
分类映射
检测 NMS
··· ···
深度学习框架
Caffe
Tensorflow
Pytorch
Paddle
MXNet
学习建议
先学机器学习,再学深度学习。
人工智能入门有一定的门槛,但并是不什么高大上的技术,有本科的高数基础就能学。
但由于想从这这个方向的人较多,想找到这个方向的相关工作,建议读研,这样才有竞争力。
学习的方法还是多实战,可以参加一些比赛,例如 Kaggle、阿里云天池等。
资源
视频
吴恩达深度学习:https://www.bilibili.com/video/BV1FT4y1E74V
吴恩达机器学习:https://www.bilibili.com/video/BV164411b7dx
MIT 线性代数:https://www.bilibili.com/video/BV1ix411f7Yp
PyTorch 快速入门教程:https://www.bilibili.com/video/BV1hE411t7RN
Tensorflow2.0 入门教程:https://www.bilibili.com/video/BV1Zt411T7zE
书籍
机器学习实战:https://book.douban.com/subject/24703171/
机器学习(西瓜书):https://book.douban.com/subject/26708119/
深度学习(花书):https://book.douban.com/subject/27087503/
机器学习实战(sklearn+tf):https://book.douban.com/subject/35218199/
统计学习方法:https://book.douban.com/subject/10590856/
线性代数及其应用:https://book.douban.com/subject/1425950/
概率论与数理统计:https://book.douban.com/subject/2201479/
文档
Jack Cui机器学习实战
Github:https://github.com/Jack-Cherish/Machine-Learning
个人网站:https://cuijiahua.com/blog/ml/
Jack Cui深度学习实战
Github:https://github.com/Jack-Cherish/Deep-Learning
个人网站:https://cuijiahua.com/blog/dl/dl-basics/
竞赛
Kaggle:https://www.kaggle.com/
阿里云天池:https://tianchi.aliyun.com/competition/gameList/activeList
量化交易(60天)
知识
策略
双均线策略
海归策略
套利策略
多因子选股
新闻情绪因子
超平滑均线策略
配对交易策略
Alpha对冲策略
技术指标
MACD
EMA
BOLL线
收益分析
收益率
最大回撤
夏普比率
Alpha
Beta
学习建议
学量化,不要急,数学功底要过硬。
不要盲目实盘,多学多看。
先有逻辑,再coding,靠着自己的逻辑炒股都亏,更别提自己写的代码了。
量化,就是将自己的交易思路,写成代码。
学技术,学思想。
资源
视频
Jack Cui入门教程:https://www.bilibili.com/video/BV1Z44y1874X
文档
Github:https://github.com/Jack-Cherish/quantitative
聚宽社区:https://www.joinquant.com/study
书籍
富爸爸穷爸爸:https://book.douban.com/subject/27153484/
牛奶可乐经济学:https://book.douban.com/subject/3000997/
聪明的投资者:https://book.douban.com/subject/5243775/
打开量化投资的黑箱:https://book.douban.com/subject/10528799/
数据分析(60天)
知识
数据学科
数据学科环境安装
软件配置和使用
数值计算
数组创建
索引/切片/布尔查询
数组运算/变换
随机数操作
数值模拟项目
可视化
Matplotlib可视化
折线图
散点图
柱状图
直方图
箱线图
热力图
高级绘图
seaborn可视化
pyechart可视化
可视化项目
数据分析
numpy
pandas
数据分析流程
数据分析报告
文本分析
中文分词
关键词抽取
词云
中文情感分析
语义结构分析
文本分析项目
学习建议
Excel、SQL、Python 数据分析都得掌握。
SQL 看 -
阶段3:开发基础 的资料即可。
资源
视频
数据分析自学课:https://www.bilibili.com/video/BV1ZM4y1u7uF
Excel教程:https://www.bilibili.com/video/BV11J411g7k4/
书籍
利用Python进行数据分析:https://book.douban.com/subject/25779298/
Python数据分析与挖掘实战:https://book.douban.com/subject/26677686/
资料
利用Python进行数据分析:https://github.com/BrambleXu/pydata-notebook
开源数据可视化分析工具:https://github.com/dataease/dataease
可视化工具:https://github.com/pyecharts/pyecharts
网络爬虫(30天)
知识
爬虫基础
数据抓取
静态加载(小说下载)
动态加载(漫画下载)
进阶体验(视频下载)
API 的使用方法
代理 IP
数据库
爬虫进阶
模拟登录
验证码识别
正则表达式
APP 爬取
爬虫高阶
Scrapy框架
分布式爬虫
逆向解密
学习建议
网络爬虫相对简单一些,现在网站都有反爬虫了,不像早些年。
建议挑一些小网站测试,但是一定注意控制好请求量,不要给别人造成压力。
挑一些有趣的例子学,比如爬个妹子图、帅哥图啥的。
资源
视频
https://www.bilibili.com/video/BV1D3411q7GX
书籍
Python3网络爬虫开发:https://book.douban.com/subject/30175598/
资料
Github爬虫项目:https://github.com/Jack-Cherish/python-spider
Jack Cui网络爬虫入门:https://blog.csdn.net/c406495762/category_9268672.html
网络爬虫:https://cuijiahua.com/blog/spider/
阶段5:求职技巧
目标
找到一个好工作,多看别人的面经。
建议
找好方向,尽早规划,最好有一年的时间准备
多看面经:https://cuijiahua.com/blog/interview/
多刷题,可以看 - 阶段2:巩固基础 - 部分的刷题笔记
面试做好录音,方便后续总结,回顾和优化
推荐网站
牛客网:https://www.nowcoder.com/
脉脉:https://maimai.cn/
Jack 经历
个人经历:https://t.1yb.co/CANb
我,从高考到程序员的成长之路:https://mp.weixin.qq.com/s/5RAX2qCM2TX-8tyMRpPuQA