Python从新手到大师 100天学习计划 Github Star 13k+

Python从新手到大师 100天学习计划

作为目前热度以及实用的编程语言,Python 不仅是程序猿新手入门的首选,也逐渐成为了从大厂到小厂,招牌需求 list 的必备。

当然学 Python 这件事情,你可能已经下了一百次决心,但是最后都“从入门到放弃”。究其原因,很可能是没有明确的学习目标,或者学习目标太过“宏伟”,所以总是阵亡在了引导视频到第一行代码之前。

那么,从小白成为大师,到底需要多长时间?真的有一个有规可循的计划吗?本周 Github 热榜的项目告诉你:Python 学习有套路!只需要100天!

GitHub - jackfrued/Python-100-Days: Python - 100天从新手到大师

自发布,这篇 Github 的标星数量已经过万,Fork 数量也有3566。项目详细给出了一个100天的 Python 学习计划,包括每天需要掌握的内容、学习周期、资料库等。从怎么安装 Python 介绍起到使用 Django 开发项目收尾,100天,11个阶段,每完成一个阶段都让你成就感满满。

地址:GitHub - jackfrued/Python-100-Days: Python - 100天从新手到大师 (作者:骆昊)

下面简单介绍一下这个项目。

阶段一 Python 语言基础(学习周期15天)

第1天的任务是让你完成 Python 的搭建并写出第一行命令,也就是 hello word。除此之外,使用IDLE - 交互式环境(REPL),编写多行代码,使用注释给说明代码的作用也是在第一天就要掌握的。

第2天的任务是掌握 Python 的语言元素,包括变量和类型、数字和字符串、运算符等。学完这些知识点,在第二天就要能够实现应用案例包括:华氏温度转换成摄氏温度、输入圆的半径计算周长和面积、输入年份判断是否是闰年。例如将华氏温度转摄氏温度。

1
2
3
4
5
6
7
8
9
10
11
"""
将华氏温度转换为摄氏温度
F = 1.8C + 32

Version: 0.1
Author: 骆昊
"""

f = float(input('请输入华氏温度: '))
c = (f - 32) / 1.8
print('%.1f华氏度 = %.1f摄氏度' % (f, c))

第3天掌握分支结构,包括分支结构的应用场景,if 语句的使用。然后使用这三天的知识点完成案例用户身份验证、英制单位与公制单位互换、掷骰子决定做什么、百分制成绩转等级制、分段函数求值、输入三条边的长度如果能构成三角形就计算周长和面积等。

第4天学习循环结构,包括 while 循环的基本结构:break 语句、continue 语句等。for 循环的基本结构、range 类型等等。然后完成1~100求和、判断素数、猜数字游戏、打印九九表、打印三角形图案、猴子吃桃等经典案例。

第5天总结前四天的知识点。

第6天函数和模块的使用知识点,包括:函数的作用、用函数封装功能模块、定义函数、调用函数、函数的参数、函数的返回值、作用域问题、用模块管理函数。

第7天,介绍字符串和常用数据结构知识点,包括字符串、列表、元组 、集合、字典等知识点。要能用这些知识带你完成杨辉三角、双色球选号、井字棋等经典案例。

第8天,面向对象编程基础,介绍类和对象的以及基础练习:定义学生类,定义时钟类,定义图形类,定义汽车类。

第9天,面向对象进阶,学习属性、类中的方法以及运算符重载、继承和多态等知识点,能够完成工资结算系统、图书自动折扣系统、自定义分数类案例。

第10天,图形用户界面和游戏开发。使用 tkinter 开发GUI、使用 pygame 三方库开发游戏应用,完成打球吃小球的游戏。

第11天,文件和异常。学会读文件,写文件,异常处理,代码块等知识点,完成案例:歌词解析。

第12天,字符串和正则表达式。重点是正则表达式相关知识点,并能使用正则表达式验证输入的字符串。

第13天,进程和线程,掌握进程和线程的概念、进程的使用方法。

第14天分为两个部分,第一部分网络编程入门,第二部分网络应用开发。网络编程入门介绍计算机网络基础、网络应用架构、Python 网络编程。第二部分介绍访问网络 API、文件传输、电子邮件、短信服务( twilio 模块 / 国内的短信服务)

第15天,图像和文档处理。包括用 Pillow 处理图片,读写 Word 文档,读写 Excel 文件,生成 PDF 文件等知识点。

经过这15天,我们就完成了基本的 Python 语言入门,接下来进入 Python 语言进阶。

阶段二 Python 语言进阶(周期15天)

这一阶段要掌握常用数据结构、函数的高级用法(例如 Lambda 函数、作用域和闭包)、面向对象设计原则、迭代器和生成器、并发和异步编程等五个部分,每两天一个部分!

阶段三 Web 前端入门(周期10天)

用 HTML 标签承载页面内容、用 CSS 渲染页面、用 JavaScript 处理交互式行为、jQuery 入门和提高、Vue.js 入门、Element 的使用、Bootstrap 的使用。

阶段四 玩转 Linux 操作系统(周期5天)

包括操作系统发展史和Linux概述、Linux基础命令、Linux中的实用程序、Linux的文件系统、Vim编辑器的应用、环境变量和Shell编程、软件的安装和服务的配置、网络访问和管理。

阶段五 数据库基础和进阶(周期5天)

介绍包括关系型数据库 MySQL、SQL 的使用以及范式理论,设计二维表的指导思想、数据完整性、数据一致性等相关知识点。最后介绍 NoSQL 入门。

阶段六 Django 实战(周期15天)

从第41天开始,就从理论到实践啦!Django 实战,5分钟快速上手,深入模型理解关系数据库配置、使用 ORM 完成对模型的 CRUD 操作、Django 模型最佳实践;学会加载静态资源、用 Ajax 请求获取数据。

这个阶段你还将学到表单的应用、Cookie 和 Session、中间件的应用、日志和缓存、文件上传和富文本编辑、文件下载和报表、RESTful 架构和 DRF 入门、RESTful 架构和 DRF 进阶、使用缓存、短信和邮件、异步任务和定时任务、单元测试和项目上线;最后学习项目开发流程和相关工具。

阶段七 Flask 实战(周期5天)

此阶段掌握 Flask 入门、模板的使用、表单的处理、数据库操作、项目实战。

阶段八 Tornado 实战(周期5天)

在进入正式的知识点之前,先花一天的时间掌握预备知识:并发编程、I/O 模式和事件驱动。然后开始学习 Tornado 入门、异步化、WebSocket 的应用等等。

阶段九 爬虫开发(周期10天)

包括网络爬虫和相关工具、数据采集和解析、存储数据、并发下载、解析动态内容、表单交互和验证码处理、 Scrapy 入门、Scrapy 高级应用、Scrapy 分布式实现等等。

阶段十 数据处理和机器学习(周期15天)

在工具知识点部分,主要介绍机器学习基础、 Pandas 的应用、NumPy 和 SciPy 的应用、 Matplotlib 和数据可视化。在算法部分,主要介绍 k最近邻(KNN)分类、决策树、贝叶斯分类、支持向量机(SVM)、K-均值聚类、回归分析。其他也包括:大数据分析入门、大数据分析进阶、Tensorflow 入门、Tensorflow 实战、推荐系统。

阶段十一 团队项目开发(周期10天)

开始的前两天, 你需要先组建好开发团队和完成项目选题,数据库设计以及 OOAD。

在之后的6天内,使用 Django 开发项目;最后给自己留两天的实践测试和部署。

OMT

其他资料

学完这100天的知识点,认真完成项目,无论去面试哪一家公司的 Python 开发岗位,相信你都是信心满满。为了让你尽快拿到 offer,此项目还给出了其他的一些资料,包括 PEP 8 风格指南、Python 参考书籍、Python 惯例、玩转 PyCharm、用函数还是用复杂的表达式、知乎问题回答、那些年我们踩过的那些坑。

例如在知乎问题回答文档中,就给出了 Python 各个方向的岗位招聘需求情况👇

Python 各方向岗位招聘需求情况

最后,祝自己学习顺利吧!

您的支持将鼓励我继续坚持技术分享!
0%