楼+之Python实战第10期 楼+

关注
116人关注 26人评论

楼+ 是实验楼精心打造的教学产品,课程由实验楼一线核心研发人员制作并定期直播,且提供助教全程QQ群答疑等服务。在楼+12周的学习中,你会在实验中动手学习,在挑战中检验自己的学习成果,在大项目协作中体验真实工作流程,以此来达到学习的目的,对只看不动手说NO!本期主题是 Python实战,12周课程涵盖 Python 基础、前端基础、爬虫、数据分析、运维开发、微信公众号开发、Flask Web 开发等技术领域。

第0周
技能准备
实验1
课程须知
实验2
课程技能准备
第1周
Python3基础与面向对象
直播1
楼+ 课程介绍及Python在实验楼中的应用
实验3
Python 基础语法
知识点: 1.Python开发环境 2.数据类型与变量 3.字符串 4.运算符 5.条件判断与循环 6.终端运行Python程序 7.模块 8.异常处理 9.Python包管理工具
挑战1
挑战:实现个税计算器
知识点: 1.Python3程序开发 2.变量与数据类型 3.输出 4.命令行参数 5.运算 6.字符串 7.控制结构 8.异常处理
实验4
列表、元组、集合与字典
知识点: 1.列表的概念与操作 2.元组的概念与操作 3.集合的概念与操作 4.字典的概念与操作
实验5
函数
知识点: 1.函数的概念 2.函数的定义与调用 3.变量作用域 4.函数的五种参数 5.函数中修改参数值
挑战2
挑战:完善工资计算器
知识点: 1.Python3基础语法 2.列表及字典 3.格式化输出 4.命令行参数 5.函数
实验6
面向对象编程
知识点: 1.面向对象编程思想 2.抽象 3.封装、类与实例 4.继承与方法重写 5.多态 6.私有属性和方法 7.类方法与静态方法 8.property装饰器 9.类中的特殊方法
实验7
文件处理
知识点: 1.输入与输出 2.打开与关闭文件 3.读取与写入文件 4.pickle序列化 5.JSON序列化 6.CSV文件读写方法
挑战3
挑战:工资计算器读写数据文件
知识点: 1.Python3基础语法 2.文件读取与写入 3.面向对象编程 4.命令行参数 5.函数
实验8
Python 高级特性
知识点: 1.高阶函数 2.lambda匿名函数 3.偏函数 4.切片 5.列表解析 6.字典解析 7.元组拆包 8.迭代器 9.生成器 10.装饰器
实验9
[选学] Python 多进程与多线程
知识点: 1.Python3开发多进程程序 2.进程间通信 3.进程同步 4.进程池 5.Python3多线程程序
挑战4
[选学] 挑战:多进程工资计算器
知识点: 1.Python3多进程 2.进程间通信 3.函数
实验10
[选学] 常用模块
知识点: 1.`os`:操作系统相关的操作 2.`sys`:获取Python解释器状态 3.`datetime`:时间日期及相关计算 4.`time`:处理时间、打印当前时间、强制挂起当前进程 5.`requests`:网络请求标准库 6.`base64`:用字符表示二进制数据 7.`copy`:深复制与浅复制,复制可变数据类型 8.`configparser`:读取配置文件 9.`collections`:提供一系列特殊的容器类 10.`re`:正则表达式库
挑战5
[选学] 挑战:使用模块优化工资计算器
知识点: 1.Python3模块使用 2.getopt处理命令行参数 3.configparser读取配置文件 4.datetime格式化输出时间
直播2
第一周挑战解析与下周知识导学
第2周
Python Web开发基础
实验11
Flask 入门
知识点: 1.Flask简介 2.配置方法 3.路由和视图函数 4.模板渲染 5.GET与POST 6.session 7.cookies 8.错误处理 9.插件
实验12
HTML 和 CSS
知识点: 1.HTML5基础知识 2.CSS3基础知识
实验13
Jinja2 模板
知识点: 1.Jinja语法 2.Jinja基础 3.Jinja模板 4.Jinja过滤器
挑战6
挑战:一个简单的资讯网站
知识点: 1.Flask基本使用 2.Flask自定义错误页面 3.注册路由 4.模板渲染 5.Jinja语法 6.Jinja继承 7.HTML语法 8.CSS语法 9.JSON序列化 10.os模块
实验14
关系数据库 MySQL 和 ORM
知识点: 1.MySQL基础知识 2.关系数据库基础 3.SQLAlchemy基础知识
挑战7
挑战:从数据库中读取内容
知识点: 1.MySQL基础知识 2.关系数据库基础 3.SQLAlchemy基础知识 4.`flasksqlalchemy`的使用方法
实验15
NoSQL 数据库
知识点: 1.MongoDB的基础操作; 2.Redis基础操作; 3.使用Python访问MongoDB和Redis;
挑战8
挑战:为文章增加标签
知识点: 1.MongoDB的基础操作; 2.`pyMongo`的使用方法 3.面向对象中方法和属性的使用
实验16
[选学] JavaScript基础
知识点: 1.JavaScript数据类型 2.JavaScript控制结构 3.JavaScript函数与匿名函数 4.JavaScript对象 5.JavaScript原型 6.JavaScript数组 7.JavaScript类
挑战9
[选学] 挑战:优化页面展示
知识点: 1.Jinja模板 2.HTML基础知识 3.CSS基础知识 4.Bootstrap基础用法
直播3
第二周挑战解析与第三周导学直播
第3周
使用Python开发各种工具(选学)
挑战10
Python3 获取 MongoDB 数据
知识点: 1.Python3基本语法 2.MongoDB使用 3.Pymongo模块
挑战11
Python3 处理 Excel 文件
知识点: 1.Python3基础语法 2.Python3处理Excel 3.openpyxl模块的使用 4.根据官方文档学习使用新Python包
挑战12
Python3 实现端口扫描器
知识点: 1.Python3基础语法 2.Python3Socket网络编程 3.网络基础知识 4.安全基础知识
挑战13
Python3 处理 Nginx 日志
知识点: 1.Python3文本处理 2.Python3文件操作 3.Nginx日志格式 4.Python3正则表达式基本使用
挑战14
Flask Web 应用 BUG 修复
知识点: 1.FlaskWeb框架 2.Flask应用调试排错 3.Python3修复BUG流程
直播4
第三周挑战解析与第四周导学直播
第4周
Scrapy 开发爬虫
实验17
Scrapy 爬取实验楼课程信息
知识点: 1.scrapy爬虫框架介绍 2.scrapy框架安装 3.数据提取器:CSS和XPATH 4.scrapyshell 5.正则表达式数据提取 6.start_urls
挑战15
挑战:爬取指定用户的 Github 仓库
知识点: 1.scrapy爬虫框架介绍 2.scrapy框架安装 3.数据提取器:CSS和XPATH 4.scrapyshell 5.start_urls
实验18
连接数据库的标准 Scrapy 项目
知识点: 1.连接数据库 2.创建Scrapy项目 3.创建爬虫 4.Item容器 5.ItemPipeline 6.Models创建表 7.保存Item到数据库 8.Item过滤
实验19
Scrapy 爬取实验楼用户数据
知识点: 1.Scrapy项目框架 2.分析网页元素字段 3.SQLAlchemy定义数据模型 4.创建Item 5.解析数据
挑战16
挑战:将仓库信息存入数据库
知识点: 1.Scrapy项目框架 2.分析网页元素字段 3.SQLAlchemy定义数据模型 4.连接数据库 5.创建Scrapy项目 6.创建爬虫 7.Item容器 8.ItemPipeline 9.Models创建表 10.保存Item到数据库
实验20
Scrapy 爬虫高级应用
知识点: 1.页面追随 2.图片下载 3.Item包含多个页面数据 4.模拟登录
挑战17
挑战:爬取仓库的提交、分支、版本
知识点: 1.Scrapy项目框架 2.分析网页元素字段 3.SQLAlchemy定义数据模型 4.连接数据库 5.创建Scrapy项目 6.创建爬虫 7.Item容器 8.ItemPipeline 9.Models创建表 10.保存Item到数据库 11.组成item的数据在多个页面
直播5
第四周挑战解析与第五周导学直播
第5周
爬虫实战应用
挑战18
基于Selenium与PhantomJS实现爬虫
知识点: 1.Selenium 2.PhantomJS
挑战19
基于Scrapy的CrawlSpider实现爬虫
知识点: 1.CrawlSpider 2.Rule 3.正则表达式 4.Redis
挑战20
突破反爬虫策略爬取豆瓣电影
知识点: 1.`CrawlSpider`类 2.Redis数据库读写 3.`UserAgentMiddleware`中间件使用 4.`COOKIES_ENABLED`参数 5.`DOWNLOAD_DELAY`参数
挑战21
基于 asycio 模块实现异步爬虫
知识点: 1.异步编程 2.asyncio/async/await 3.aiohttp 4.csv库
直播6
第五周挑战解析与第六周导学直播
第6周
Python 实现数据分析
实验21
Numpy 和 Pandas 基础
知识点: 1.`ndarray`多维数组的创建; 2.多维数组的索引方式; 3.多维数组的运算规则; 4.`Series`和`DataFrame`数据集的创建; 5.数据集的数据项选择方式; 6.数据集的自动对齐规则; 7.数据集的合并方式; 8.缺失值的处理; 9.时间序列处理;
挑战22
挑战:Pandas 处理 JSON 文件
知识点: 1.Pandas基本用法 2.JSON数据文件处理 3.DataFrame索引与过滤
实验22
Matplotlib 数据可视化
知识点: 1.`matplotlib`绘图基础知识 2.`matplotlib`常用属性设置 3.各种图形的用途 4.Pandas绘图
挑战23
挑战:基于学习数据绘图
知识点: 1.Matplotlib基本用法 2.绘制线性图 3.Figure与Axes 4.设置图形属性
实验23
时间序列处理
知识点: 1.时间序列基础知识 2.时间戳和时间戳索引 3.DateOffset对象 4.Period时间间隔 5.时序数据检索 6.时序数据偏移 7.时序数据重采样
挑战24
挑战:时间序列分析挑战
知识点: 1.Pandas 2.DataFrame 3.时间序列 4.时间戳和时间戳索引
实验24
实验楼课程数据分析
知识点: 1.实验楼课程数据读取 2.时序数据分析 3.课程学习时间变化趋势分析 4.实验楼实验学习情况分析
直播7
第六周挑战解析与第七周导学直播
第7周
数据分析实战应用
挑战25
各国历年二氧化碳 CO2 排放量统计分析
挑战26
各国 CO2 排放量与 GDP 总值关联分析
挑战27
世界温室气体排放与气温变化关联分析
挑战28
地球地表平均气温变化趋势预测分析
直播8
第七周挑战解析与第八周导学直播
第8周
Flask 开发在线教育平台
实验25
在线教育网站一中型项目开发框架搭建
知识点: 1.FlaskWeb框架 2.后端模块化 3.前端模块化 4.Blueprint 5.Bootstrap
挑战29
挑战:增加用户页面
实验26
在线教育网站—数据库升级及表单创建与渲染
知识点: 1.数据库表设计 2.登录注册 3.Flaskmigrate管理升级 4.Flaskwtf创建及渲染表单 5.Bootstrap美化页面
实验27
在线教育网站—注册登录功能与表单错误显示实现
知识点: 1.FlaskWeb框架 2.Flasklogin登录功能 3.WTForm数据验证 4.Jinja2模板
挑战30
挑战:优化登陆及注册环节
实验28
在线教育网站—课程列表及课程详情页面实现
知识点: 1.数据库表设计 2.faker库创建测试数据 3.flasksqlalchemy分页管理 4.Bootstrap布局及组件
实验29
在线教育网站—视频播放及后台管理实现
知识点: 1.videojs实现视频播放 2.网站管理后台实现 3.后台路由及访问控制 4.数据增删改查管理
挑战31
挑战:增加用户管理模块
直播9
第八周挑战解析与第九周导学直播
第9周
Python 为在线教育平台增加在线直播
实验30
在线直播功能分析及前端实现
知识点: 1.在线直播技术原理 2.阿里云云直播服务 3.OBS推流设置 4.使用`flvjs`播放rtmp直播流
挑战32
挑战:添加直播管理功能
实验31
在线直播聊天窗口实现
知识点: 1.WebSocket 2.flasksockets插件 3.Redis的pubsub系统 4.聊天消息队列实现
挑战33
挑战:新用户进入聊天室提醒
挑战34
挑战:后台发送系统消息
直播10
第九周挑战解析与第十周导学直播
第10周
框架开发及Github协作
挑战35
挑战:代码仓库及 Pull Request
挑战36
挑战:需求分析及任务分配
挑战37
挑战:代码框架及数据库设计
挑战38
挑战:实现首页、登录及信息配置页面
挑战39
挑战:职位列表及企业列表展示页面
实验32
[单人项目] Seiya 数据分析系统框架搭建
实验33
[单人项目] 集成 Antv G2 图表类库
实验34
[单人项目] 拉勾网职位数据抓取
知识点: 1.SQLAlchemyORM使用 2.Scrapy使用,以及突破反爬的手段
第11周
项目功能开发
挑战40
挑战:管理员用户管理页面
挑战41
挑战:企业及求职者注册功能
挑战42
挑战:职位详情和企业详情页面及求职者投递
挑战43
挑战:职位管理和简历管理功能
实验35
[单人项目] 职位数和薪资 Top10 城市
知识点: 1.SQLAlchemy分组查询 2.Ajax请求服务端数据 3.G2柱状图生成 4.BootstrapTables组件使用
实验36
[单人项目] 热门职位标签
知识点: 1.Pandas读取数据库表数据,以及数据分析 2.Matplotlib图表生成,以及导出图片 3.网络动态图片响应
实验37
[单人项目] 工作经验和学历要求统计
知识点: 1.SQLAlchemy分组查询,以及MySQL内置函数使用 2.G2饼图生成
实验38
[单人项目] 同等学历不同城市薪资对比
知识点: 1.SQLAlchemy多条件分组查询 2.G2多条折线图生成
第12周
测试及部署上线
挑战44
[选学] 挑战:Flask Web 应用项目测试
挑战45
挑战:Gunicorn 部署 Flask 应用
挑战46
挑战:Nginx + Gunicorn 部署应用
实验39
[单人项目] 链家网租房数据分析
知识点: 1.Scrapy数据抓取 2.SQLAlchemy数据库查询 3.Pandas数据分析 4.Matplotlib图表生成 5.AntvG2图表生成 6.FlaskWeb网站开发
实验40
[单人项目] 点评网餐馆数据分析
知识点: 1.Scrapy数据抓取 2.SQLAlchemy数据库查询 3.Pandas数据分析 4.Matplotlib图表生成 5.AntvG2图表生成 6.FlaskWeb网站开发
实验41
毕业须知
第13周
(选学)Python开发运维工具
实验42
[选学] Redis 监控工具功能设计
知识点: 1.HTTP协议简介 2.API设计思路 3.FlaskWeb框架 4.SQLAlchemy
挑战47
[选学] 挑战:Flask应用加载json配置文件
知识点: 1.Flask配置文件处理; 2.json文件处理;
实验43
[选学] Redis 监控工具测试开发
知识点: 1.测试开发思路 2.assert 3.pytest测试框架 4.编写测试用例 5.redis模块 6.flaskshell
实验44
[选学] Redis 监控工具 API 实现
知识点: 1.Marshmallow软件包的使用; 2.自定义视图控制器基类; 3.API实现;
挑战48
[选学] 挑战:基于 Redis 实现缓存系统
知识点: 1.Redis基本使用; 2.装饰器; 3.缓存系统;
实验45
[选学] Redis 监控工具前端界面实现
知识点: 1.前后端分离的概念 2.Vue基础知识 3.ElementUI组件库 4.Babel 5.WebPack 6.ECharts
挑战49
[选学] 挑战:requests访问API
知识点: 1.rmonAPI的使用; 2.requests软件包的使用
实验46
[选学] Redis 监控工具挑战解析
第14周
(选学)Python开发微信公众号
实验47
[选学] Redis 监控工具用户系统实现
知识点: 1.用户数据库模型的实现; 2.基于JWT的认证系统实现; 3.API认证功能实现;
挑战50
[选学] 挑战:修复用户登录 API
知识点: 1.rmonAPI的使用; 2.登录接口的实现;
实验48
[选学] Redis 监控工具微信公众号接入
知识点: 1.微信公众号申请方法; 2.微信公众号后台配置方法; 3.微信公众平台API;
挑战51
[选学] 挑战:实现微信消息处理器
知识点: 1.微信消息处理器的编写; 2.如何查询IP地址归属地信息; 3.正则表达式的使用;
实验49
[选学] Rmon 微信公众号接入逻辑实现
知识点: 1.绑定微信用户; 2.微信消息处理器实现; 3.使用微信公众号管理Redis服务器;
挑战52
[选学] 挑战:实现 Token 刷新 API
知识点: 1.基于JWT认证用户; 2.Token刷新机制;
实验50
[选学] 微信公众号开发挑战解析
登录 后发表评论
最新评论
全部 第1节 第2节 第3节 第4节 挑战:实现个税计算器 第5节 第6节 挑战:完善工资计算器 第7节 第8节 挑战:工资计算器读写数据文件 第9节 第10节 [选学] 挑战:多进程工资计算器 第11节 [选学] 挑战:使用模块优化工资计算器 第12节 第13节 第14节 第15节 挑战:一个简单的资讯网站 第16节 挑战:从数据库中读取内容 第17节 挑战:为文章增加标签 第18节 [选学] 挑战:优化页面展示 第19节 Python3 获取 MongoDB 数据 Python3 处理 Excel 文件 Python3 实现端口扫描器 Python3 处理 Nginx 日志 Flask Web 应用 BUG 修复 第20节 第21节 挑战:爬取指定用户的 Github 仓库 第22节 第23节 挑战:将仓库信息存入数据库 第24节 挑战:爬取仓库的提交、分支、版本 第25节 基于Selenium与PhantomJS实现爬虫 基于Scrapy的CrawlSpider实现爬虫 突破反爬虫策略爬取豆瓣电影 基于 asycio 模块实现异步爬虫 第26节 第27节 挑战:Pandas 处理 JSON 文件 第28节 挑战:基于学习数据绘图 第29节 挑战:时间序列分析挑战 第30节 第31节 各国历年二氧化碳 CO2 排放量统计分析 各国 CO2 排放量与 GDP 总值关联分析 世界温室气体排放与气温变化关联分析 地球地表平均气温变化趋势预测分析 第32节 第33节 挑战:增加用户页面 第34节 第35节 挑战:优化登陆及注册环节 第36节 第37节 挑战:增加用户管理模块 第38节 第39节 挑战:添加直播管理功能 第40节 挑战:新用户进入聊天室提醒 挑战:后台发送系统消息 第41节 挑战:代码仓库及 Pull Request 挑战:需求分析及任务分配 挑战:代码框架及数据库设计 挑战:实现首页、登录及信息配置页面 挑战:职位列表及企业列表展示页面 第42节 第43节 第44节 挑战:管理员用户管理页面 挑战:企业及求职者注册功能 挑战:职位详情和企业详情页面及求职者投递 挑战:职位管理和简历管理功能 第45节 第46节 第47节 第48节 [选学] 挑战:Flask Web 应用项目测试 挑战:Gunicorn 部署 Flask 应用 挑战:Nginx + Gunicorn 部署应用 第49节 第50节 第51节 第52节 [选学] 挑战:Flask应用加载json配置文件 第53节 第54节 [选学] 挑战:基于 Redis 实现缓存系统 第55节 [选学] 挑战:requests访问API 第56节 第57节 [选学] 挑战:修复用户登录 API 第58节 [选学] 挑战:实现微信消息处理器 第59节 [选学] 挑战:实现 Token 刷新 API 第60节

0% Complete

加载中,精彩就在后面...

卡住了?点击重试