阶段一:Python基础入门 14门课 /课程总时长:30小时 第1周 环境搭建与基础语法 欢迎加入Python工程师的学习,本周开始学习Python的基础,重点掌握Python基础语法, 学会搭建环境,掌握程序的执行入口和执行顺序,能够熟练使用Python基础语法实现第一个程序。 课程安排: 1、了解Python工程师整体行业和发展 2、Python基础概念介绍 3、学会Python环境安装 4、会编写Python第一个脚本 5、变量与关键字的区分与应用 6、Python的七种数据类型的应用 7、用生活案例理解运算符的操作 8、综合应用案例:小慕的一天 第2周 三大主流数据类型的操作 本周是夯实Python基础的新篇章,掌握字符串、列表及字典三大数据类型常用方法的应用,提升基础的编程能力。 课程安排: 1、认识Python对象 2、字符串的16种函数及应用 3、字符串的编码格式和格式化操作 4、使用特殊字符解决实际问题 5、列表的9种不同操作 6、索引与切片的应用 7、字典的8种函数及操作 8、不同数据类型与布尔值的关系 9、综合作业:实现货币兑换系统 第3周 Python流程控制与函数 本周是Python基础进阶的篇章,学习Python不同数据类型的转换,掌握Python的流程控制和函数的使用,再次提升编程能力。 课程安排: 1、掌握Python集合的CURD操作 2、学会不同数据类型间的转换 3、循环与条件语句的应用 4、break和 continue的区别与应用 5、函数的定义与使用 6、递归函数与匿名函数的应用 7、局部变量与全局变量的区别与使用 8、循环语句的应用案例:实现九九乘法表 9、综合案例:实现学生信息库 第4周 Python面向对象与异常处理机制 本周是Python核心知识的篇章,重点学习面向对象编程与异常处理机制,掌握 Python 类和对象的基本语法,了解 Python 面向对象的实现原理,提高编程效率。 课程安排: 1、掌握面向对象编程思想与三大特性 2、理解私有函数与私有变量 3、装饰器与类装饰器的使用 4、类高级函数的使用 5、捕获异常与自定义异常 6、断言的使用 7、编程中如何找BUG 8、应用案例:面向函数转面向对象 9、面向对象编程案例:升级学生信息库 10、综合作业:选修课程分配 第5周 Python模块与文件操作 本周是提升Python编写代码的效率篇章,重点掌握模块与包的操作、文件读写操作,常用加密工具与高阶函数的使用,会对代码进行有效管理。 课程安排: 1、代码组织管理:包与模块 2、会使用Python强大的第三包 3、Python内置库os与sys的应用 4、文件读写操作应用 5、序列化和yaml的使用 6、加密工具和日志模块的使用 7、Python高阶函数的应用 8、虚拟环境的安装与使用 9、综合作业:实现数字猜猜猜小游戏 阶段二:Python语法进阶 4门课 /课程总时长:14小时 第6周 多线程编程、正则表达式与综合项目实战 本周学习程序设计开发中多任务实现的方式,重点掌握进程、线程、多进程、多线程及进程间的通信;正则表达式,进行抽奖系统的综合项目开发与实战,再次强化巩固所学知识,提升编程能力,为后续学习打下坚实的基础 课程安排: 1、理解进程/多进程与线程/多线程的定义与区别 2、编程实现进程与线程的应用 3、掌握进程间通信的方法 4、GIL全局锁与异步操作 5、使用进程池进行多任务开发 6、掌握正则表达式基础、re模块 7、正则表达式的综合案例应用 8、实战开发:完成抽奖系统 9、面试与学习建议 10、综合作业:完成抽奖系统抽奖次数的限制功能 第7周 Python办公自动化 本周学习使用Python编写程序实现办公自动化,将所学知识运用到实际工作、学习中。全面了解Python的运用场景,拓展更多解决问题的思路,学以致用,切实解决工作中的繁琐问题。 课程安排: 1、实现文件自动化管理 2、Word自动化,高效高质量做文档 3、Excel自动化,掌握数据读写与制作图表 4、PPT自动化 5、Python邮件自动化 6、综合作业:邮件发送合同文件 阶段三:Python数据库开发与实战 19门课 /课程总时长:30小时 第8周 MySQL数据库 本阶段开始数据库知识的学习。本周学习MySQL数据库的安装配置,通过丰富的实例学习SQL语言基础和数据库表的基本操作,掌握MySQL的基本查询、高级查询,学会使用MySQL函数,为后续数据库开发打下基础。 课程安排: 1、学会MySQL的安装与配置 2、掌握数据库系统和数据库表的创建与管理 3、掌握SQL基础语法及数据类型 4、数据库的索引机制 5、数据库表的基本查询 6、学会聚合函数与分组查询的应用 7、表的内外连接查询操作 8、学会子查询的语法规则及注意事项 9、掌握数据库的CURD操作 10、函数使用:时间函数、条件函数、字符函数 第9周 Python与MySQL的交互 本周学习MySQL的事务机制,重点掌握MySQL的驱动模块Connector,学会用Python操作MySQL,开发实现新闻管理系统项目;结合数据库,实现办公自动化进阶,完成学生信息管理系统项目,提升数据库实战开发能力。 课程安排: 1、理解事务机制的原理 2、掌握事务的ACID属性及四种隔离级别 3、数据导出与备份的区别与应用 4、数据库设计的综合案例:实现新闻管理系统 5、MySQL Connector模块的使用 6、学会SQL批处理执行 7、案例练习:SQL注入攻击案例 8、新闻管理系统项目介绍与展示 9、实战:封装数据库连接池 10、实战:实现新闻管理模块 11、实战:完成用户模块 12、项目作业:完成新闻管理系统的审批新闻和删除新闻功能 13、实战:办公自动化进阶项目,开发学生信息管理系统 第10周 Redis数据库 本周学习非关系型数据库Redis的常用数据结构、特性及Redis与Python的交互,并运用所学知识完善新闻管理系统的开发。 课程安排: 1、学会Redis的安装与配置 2、掌握Redis常用数据结构 3、Key命令的运用 4、理解Redis事务机制 5、redis-py模块的使用 6、哈希类型数据与事务管理 7、案例练习:电商秒杀活动 8、项目实战:实现新闻管理系统的缓存新闻功能 第11周 MongoDB数据库 本周学习MongoDB的基础知识,增删改查操作、存储特性及MongoDB与Python的交互,最后利用所学知识再次完善新闻管理系统。 课程安排: 1、MongoDB的安装与配置 2、掌握MongoDB的数据结构 3、主键机制、索引机制 4、掌握数据库的增删改查操作 5、数据的导入导出 6、学会pymongo模块的使用 7、项目实战:完善新闻管理系统,新闻内容写入MongoDB数据库 阶段四:Python爬虫工程师 11门课 /课程总时长:29小时 第12周 初探网络爬虫 本阶段开始Python爬虫知识的学习。本周主要学习企业级网络爬虫基础知识,搭建网络爬虫的集成环境,并有案例实战带领大家迅速掌握爬虫的相关技巧。 课程安排: 1、爬虫工程师的基本功:网络基础 2、requests模块的使用 3、爬虫请求与响应 4、掌握cookie的查询和设置 5、设置状态保持session 6、设置爬虫代理与配置站点证书 7、CentOS系统的安装与使用 8、Linux环境下安装Python和MongoDB 第13周 网络爬虫进阶与实战 本周是网络爬虫的进阶篇章,重点讲解正则表达式、xpath插件、BeautifulSoup4、lxml解析库等网络爬虫常用技术,运用所学知识点,完成网络爬虫进阶的项目实战。 课程安排: 1、学会正则表达式的综合应用 2、xpath插件的安装与使用 3、BeautifulSoup4在爬虫中的使用 4、lxml解析爬取的网站 5、使用MongoDB存储爬取的网站数据 6、网络爬虫进阶项目实战 7、项目作业:豆瓣电影数据抓取 第14周 高级爬虫框架 本周主要学习Selenium框架实现爬虫可视化、Scrapy框架的基本使用,结合实战案例,帮助大家构建高级爬虫知识体系。 课程安排: 1、Selenium框架的安装与使用 2、掌握元素定位和网页交互 3、在Linux系统中应用Selenium 4、Scrapy框架安装与使用 5、目标信息数据持久化 6、编写user-agent中间件 7、编写IP代理中间件 8、案例:抓取某装修网站图片 第15~16周 高级爬虫项目实战与爬虫面试指导 本周学习反爬知识,重点讲解几种验证码识别技术,带领大家完成两个高级爬虫实战项目:Scrapy爬虫项目实战、Scrapy-Redis分布式爬虫项目实战。面试指导带领大家一起分析爬虫面试的高频考点以及答题技巧。 课程安排: 1、常见的反爬思路和应对手段 2、掌握验证码识别技术 3、目标站点分析 4、反爬策略分析与破解反爬JS 5、Scrapy爬虫项目实战案例开发 6、学会应对爬取目标站点的变化 7、爬虫项目部署 8、掌握Scrapy-Redis分布式爬虫技术 9、分布式爬虫项目实战 10、爬虫面试指导 阶段五:Python数据分析工程师 7门课 /课程总时长:16小时 第17周 数据分析入门 本阶段开始Python数据分析的学习,本周是数据分析的入门篇章,从一个简单的案例开始展开探索性数据分析,重点讲解两个核心库NumPy与Pandas,结合项目实战案例,带领大家迅速掌握数据分析的相关技巧,建立数据分析思维。 课程安排: 1、数据分析的工作流程、岗位分类与技能要求 2、从Excel开始认知数据分析 3、Jupyter Notebook安装与使用 4、掌握科学计算库NumPy 5、掌握数据分析库Pandas 6、数据分析实战:数据预处理、统计与分析 第18周 数据分析进阶:数据可视化 本周是数据分析的进阶篇章,重点讲解两个数据可视化库Matplotlib和Seaborn,掌握数据可视化的多种方式与绘图。 课程安排: 1、数据分析7大图表类型与适用数据 2、掌握Matplotlib基本函数 3、Matplotlib创建多种可视化图表 4、掌握Seaborn基本函数 5、学会使用Seaborn绘制多种图形 6、项目作业:电信流失数据可视化 第19周 数据分析进阶:统计分析与机器学习 本周是数据分析的高级进阶篇章,重点讲解统计分析与机器学习,掌握Scipy统计分布与线性回归知识、Scikit-Learn挖掘数据特性。 课程安排: 1、掌握Scipy基本函数 2、随机变量与概率分布 3、理解假设检验 4、单样本分析和双样本分析,以及样本差异比较 5、掌握Skit-Learn基本函数 6、Skit-Learn数据预处理方法 7、非监督学习与监督学习 第20周 数据分析项目综合实战与就业指导 本周进行数据分析综合项目实战,带领大家完成一线城市房价的分析。就业指导课教大家如何进行面试准备,分享面试经验,传递面试技巧。 课程安排: 1、梳理数据分析思路 2、获取一线城市房价数据 3、数据清洗与预处理 4、特征值探索与相关性分析 5、利用AHP层次分析法做决策 6、二手房价K-Means聚类分析 7、面试准备与技巧 8、数据分析岗考点一览 9、面试经验分享 10、综合就业指导 阶段六:Python全栈工程师之从网页搭建入门到Flask全栈项目实战 20门课 /课程总时长:45小时 第21周 开发必备前端基础之HTML与CSS 恭喜大家进入Python Web全栈开发阶段,本阶段全流程敏捷开发社交网站,掌握前后端开发技术。本周学习开发必备前端基础知识HTML、CSS、浮动及定位等知识,学会应用布局进行页面开发。 课程安排: 1、本阶段项目演示与技术选型 2、前端开发必备的技能与能力 3、掌握HTML开发技术 4、使用表格进行各类型数据展示 5、学会用表单进行交互式页面设计 6、利用id属性实现锚点 7、学会CSS语法及应用 8、掌握盒子模型、div的设置及浮动的特效制作 9、综合作业:利用表单和table实现页面布局 第22周 开发必备前端基础之JavaScript与jQuery JavaScript是前端开发中非常重要的内容,本周重点学习JavaScript和jQuery的语法,掌握前端基础知识,最终能开发出专业美观的页面。 课程安排: 1、入门JavaScript脚本语言 2、理解HTML+CSS+JS之间的关系 3、掌握JS的控制语法及JS事件响应与表单处理 4、掌握页面布局的方法 5、实战完成商品展示页的开发 6、构思规划页面和布局的方法 7、学会用jQuery操作DOM对象 8、掌握 jQuery处理事件的方法 9、综合案例1:结合所学完成前端油画商城开发 10、综合案例2:使用JS技术实现仿Windows计算器功能 11、综合作业:利用HTML、CSS和JS完成网页开发 第23周 企业级开发语言ES6与前端开发框架Bootstrap 提高前端开发效率必须使用框架,本周开始学习前端开发必备的语言ES6与Bootstrap框架;学完前端基础知识后,正式开始前端页面开发,基于Bootstrap框架开发在线问答系统的前端页面。 课程安排: 1、ES6与JavaScript的关系 2、ES6基础语法、函数 3、ES6面向对象编程与模块化 4、字符串与对象的解构赋值 5、实现flex布局 6、Bootstrap框架的栅栏布局思想和排版 7、首页整体布局的展示与分析 8、前端实战:开发在线问答系统各个功能模块 9、综合作业:开发文章详情页的前端页面 第24周 夯实框架基础:Python全栈开发必学后端主流框架Flask 本次要实现的是前后端分离项目,完成前端页面的开发之后,要进入后端框架的学习,本周重点学习Python Web开发的Flask框架,掌握Flask开发必备的基础,为后端开发打好基础。 课程安排: 1、掌握Flask微框使用方法 2、理解MTV模型的原理 3、掌握Flask请求响应的流程 4、学会视图重定向函数的应用 5、会对Flask模板jinja2进行正确配置 6、掌握Flask模板标签、过滤器及继承语法的使用 7、学会在视图中使用flash闪现消息 8、使用ORM进行增删改查 9、掌握WTF表单的使用 10、表单常用字段类型及渲染的操作 第25周 项目实战:Flask实战开发在线问答系统 学完框架Flask后,本周实现前端页面与Flask框架整合联调,进行实战开发在线问答系统的各个模块,重点掌握迭代开发的过程,敏捷开发的思维,不断地提升编程能力。 课程安排: 1、在线问答系统各个功能模块的展示与介绍 2、掌握敏捷开发与前后端开发技术 3、项目搭建:将问答系统前端页面整合到Flask框架 4、项目数据库的设计与实现 5、项目模块化:使用蓝图来改进项目 6、掌握分页异步加载数据的技巧 7、结合RESTful实现点赞接口和评论数据接口 8、实现用户提问、回答、点赞、评论及收藏核心业务功能 9、综合作业:实现在线问答系统的收藏功能 阶段七:Python全栈工程师之Django+Vue前后端分离商业级全栈项目实战 14门课 /课程总时长:44小时 第26周 入门Python Web全栈开发必备主流框架Django 本阶段会带着大家用Django+Vue开发商业级“慕旅游网”全栈项目,本周主要学习Python Web全栈开发必备主流框架Django,重点掌握Django框架基础,为后续全栈项目开发做好基础储备。 课程安排: 1、本阶段全栈项目演示与技术选型介绍 2、理解Flask和Django框架的区别 3、学会创建Django项目 4、掌握从请求到响应的处理 5、学会在视图中处理业务逻辑 6、掌握并使用Django模板引擎的渲染机制 7、学会模板变量、标签、继承、过滤器的使用 第27周 Django ORM模型和表单 本周继续学习Django框架的ORM模型和表单,掌握ORM模型基础,会对数据进行相关操作,以及表单的基本使用、自定义表单、文件上传操作,为后面的全栈开发夯实Django基础。 课程安排: 1、学会Django ORM模型的配置 2、掌握常见的ORM字段类型 3、使用ORM实现CRUD操作 4、掌握深入查询及事务处理的方法 5、学会用migrate同步数据到数据库 6、掌握外键的关联类型及复合类型的应用 7、掌握查询优化/聚合与统计/分页处理的应用 8、Django表单的应用 9、掌握在Django中创建表单的步骤 10、掌握单个/多个表单验证的方法 11、从ORM模型创建表单 12、通过表单/ORM实现文件上传 第28周 前端框架基础:前端开发必学Vue框架 本周学习全栈开发的前端框架Vue,主要掌握Vue的框架思想,Vue全家桶及Vue组件通信等知识点,学会使用Vue进行组件化开发。 课程安排: 1、掌握全栈项目架构设计与数据库设计思路 2、熟悉Vue全家桶:Vue/VueRouter/Vuex/VueCli/axios 3、理解Vue中的响应式 4、结合MVC、MVP讲解MVVM设计思想 5、掌握Vue全局组件和局部组件的区别 6、学会用Vue进行列表渲染与条件渲染 7、掌握Vue指令知识点及参数传递 8、Vue中的表单及双向绑定的应用 9、明确Vue过滤器的作用和使用场景 10、了解Vue组件通信的常见形式 第29周 项目实战:Django+Vue全栈开发旅游网项目首页 本周正式开始全栈项目开发,主要完成慕旅游网首页的前端页面开发、后台接口开发,以及接口联调,带你一个人撸完一个开发团队的工作。 课程安排: 1、使用Vue CLI搭建项目 2、项目结构调整:配置抽离、公共内容抽离、组件及文件结构说明 3、熟悉Webpack构建工具的作用 4、按照首页的分析结构新建对应的组件 5、异步请求库axios的使用 6、实现统一的请求和拦截封装 7、前端页面组件开发 8、设计轮播图与景点ORM模型 9、后台接口开发:轮播图和景点 10、接口联调 第30周 项目实战:Django+Vue全栈开发旅游网项目景点详情模块 本周进行慕旅游网全栈项目景点详情相关功能的实战开发。 课程安排: 1、景点详情功能介绍与技术点分析 2、VueRouter实现多个页面开发 3、hash和history两种模式的实战应用 4、在模板和JS中实现路由的跳转 5、景点详情页面实战开发:搭建前端详情页、实现预定组件、实现详情页、经典排序组件 6、Django景点分类ORM模型设计 7、API接口设计及开发 8、接口联调 9、前端代码优化 第31周 项目实战:Django+Vue全栈开发旅游网项目登录注册模块 本周进行慕旅游网全栈项目登录注册相关功能的实战开发。 课程安排: 1、分析登录与注册页面并确定技术选型 2、Redis高速缓存的应用 3、掌握Django自带的用户模块Django-auth 4、学会对多个用户进行权限管理 5、使用Django命令管理用户 6、引入Vuex进行用户状态管理 7、实战开发登录注册的前端页面 8、掌握用户模型ORM设计 9、实现图片验证码接口API开发 10、实现用户登录注册接口开发与联调 11、总结实际开发中的踩坑指南 第32周 项目实战:Django+Vue全栈开发旅游网项目订单支付模块 本周继续进行慕旅游网全栈项目订单支付相关功能的实战开发。 课程安排: 1、分析订单支付功能并确定技术选型 2、开发支付前端页面 3、开发下单支付接口 4、实现支付流程的演示与详解 5、实现各个功能间的接口联调 6、开发中的踩坑指南及经验传授 7、综合作业:实现订单详情页的后端开发 第33周 项目实战:全栈开发旅游项目后台管理系统与项目部署 本周进行慕旅游网后台管理系统的实战开发,并将慕旅游网项目在Linux下进行部署。 课程安排: 1、慕旅游网后台管理系统的演示与功能介绍 2、掌握Django-admin的使用 3、使用admin管理景点和分类 4、实现将景点添加到缓存 5、实现用户管理 6、掌握Echarts的基本使用 7、后台管理定制开发的踩坑指南 8、对慕旅游网核心模块进行单元测试 9、剖析Django实际项目开发中的问题 10、项目的常见部署方式 11、慕旅游网项目部署 阶段八:Python技能拓展 5门课 /课程总时长:18小时 第34~35周 Python技能拓展之软件自动化测试 本两周主要学习软件接口自动化测试、Web自动化测试、APP自动化测试,并介绍互联网项目运维发布策略,以及阿里的智能化发布流程。 课程安排: 1、掌握软件自动化测试基础 2、接口测试的必备的基础知识 3、接口抓包工具fiddler的使用 4、requests模块实现接口测试 5、unittest框架实战接口测试 6、生成测试报告 7、Selenium元素定位操作实战 8、掌握PageObject框架设计模式 9、掌握数据驱动在自动化测试中的应用 10、实现持续集成与日志规划及邮件通知 11、测试框架Appium工作原理与环境配置 12、Appium手机元素定位 13、实战Appium自动化测试项目 14、互联网运维发布策略 15、阿里智能化发布流程 第36周 Python技能拓展之人工智能 本周学习Python人工智能相关的知识,重点讲解机器学习领域的监督学习、无监督学习,让大家掌握人工智能核心编程思想,具备解决基础AI问题的能力 。 课程安排: 1、AI开发工具anaconda安装与配置 2、回归分析实现房价预测 3、scikit-learn实现线性回归与房价预测项目实战 4、scikit-learn实现分类与异常消费检测项目实战 5、掌握k均值聚类算法 6、KMEANS实现图像分割与项目实战 7、AI技术领域介绍与进阶学习路线