课程试听
阶段一 Python核心编程
展开第一章 Linux基础v3.1

1-1 课程简介

- 01-课程安排
- 02-励志公式和python体验
1-2 操作系统简介

- 03-什么是操作系统 免费试学
- 04-不同领域的主流操作系统-01-桌面操作系统 免费试学
- 05-不同领域的主流操作系统-02-服务器操作系统 免费试学
- 06-不同领域的主流操作系统-03-嵌入式操作系统 免费试学
- 07-虚拟机简介 免费试学
- 08-操作系统发展简史 免费试学
- 09-Linux的内核版和发行版 免费试学
- 10-Linux系统下的文件目录结构 免费试学
- 11-Ubuntu系统目录结构演示和简介 免费试学
- 12-Ubuntu图形界面基本使用 免费试学
1-3 linux命令简介

- 13-Linux命令-01-明确学习目标 免费试学
- 14-Linux命令-02-放大缩小终端窗口字体 免费试学
- 15-Linux命令-03-明确6个常见终端命令的操作效果 免费试学
- 16-Linux命令-04-6个常见终端命令简单演练 免费试学
- 17-Linux命令-05-终端命令格式 免费试学
- 18-Linux命令-06-查阅终端命令帮助信息 免费试学
1-4 目录相关命令

- 19-文件和目录命令-01-明确命令分类和学习目标 免费试学
- 20-文件和目录命令-02-分享自动补全和命令选择技巧 免费试学
- 21-文件和目录命令-03-查看隐藏文件和返回上一级目录 免费试学
- 22-文件和目录命令-04-ls的列表和文件大小选项 免费试学
- 23-文件和目录命令-05-ls和通配符的联合使用 免费试学
- 24-文件和目录命令-06-通配符的字符组 免费试学
- 25-文件和目录命令-07-cd命令的常用参数 免费试学
- 26-文件和目录命令-08-相对路径和绝对路径 免费试学
1-5 文件相关命令

- 27-文件和目录命令-09-touch和mkdir命令的扩展 免费试学
- 28-文件和目录命令-10-rm命令的扩展 免费试学
- 29-拷贝和移动命令-01-目标确定和图形界面演示 免费试学
- 30-拷贝和移动命令-02-tree以树状图查看目录结构 免费试学
- 31-拷贝和移动命令-03-cp命令复制文件 免费试学
- 32-拷贝和移动命令-04-cp命令-i选项覆盖前提示 免费试学
- 33-拷贝和移动命令-05-cp命令-r选项复制目录 免费试学
- 34-拷贝和移动命令-06-mv命令移动文件或者目录 免费试学
- 35-拷贝和移动命令-07-mv命令给文件或者目录重命名 免费试学
- 36-文件内容命令-01-cat和more的基本使用和对比 免费试学
- 37-文件内容命令-02-cat命令的-b和-n选项输出行号 免费试学
- 38-文件内容命令-03-grep查找文件内容 免费试学
- 39-文件内容命令-04-grep行首/行尾的模式查找 免费试学
- 40-其他命令-01-echo和重定向 免费试学
- 41-其他命令-02-管道的概念和基本使用 免费试学
1-6 远程管理命令

- 42-远程管理命令-01-关机和重启
- 43-远程管理命令-02-网卡和IP地址的概念
- 44-远程管理命令-03-ifconfig和ping作用的介绍
- 45-远程管理命令-04-ifconfig查询网卡信息
- 46-远程管理命令-05-ping测试网络连接
- 47-远程管理命令-06-SSH工作方式简介
- 48-远程管理命令-07-域名和端口号的概念
- 49-远程管理命令-08-ssh命令格式介绍和演练目标确定
- 50-远程管理命令-09-Mac电脑使用ssh连接ubuntu
- 51-远程管理命令-10-PuTTY的安装和exit退出登录
- 52-远程管理命令-11-XShell的安装-免费和设置语言
- 53-远程管理命令-12-scp作用以及命令格式
- 54-远程管理命令-13-scp在Mac终端中的演示
- 55-远程管理命令-14-FileZilla在Windows下文件传输
- 56-SSH高级-01-确定目标/认识.ssh目录
- 57-SSH高级-02-免密码登录设置步骤
- 58-SSH高级-03-免密码登录工作原理
- 59-SSH高级-04-配置远程计算机的别名
1-7 用户权限

- 60-用户权限-01-学习目标
- 61-用户权限-02-用户/权限/组的基本概念
- 62-用户权限-03-ls -l输出信息介绍
- 63-用户权限-03-ls -l硬链接数含义的扩展
- 64-用户权限-04-chmod修改文件权限
- 65-用户权限-05-chmod修改目录权限
- 66-用户权限-06-超级用户介绍
1-8 组管理

- 67-组管理-01-添加组/删除组/确认组信息
- 68-组管理-02-群组演练目标确定
- 69-组管理-03-chgrp修改目录所属组的演练
1-9 用户管理

- 70-用户管理-01-新建用户useradd和passwd
- 71-用户管理-02--m选项的作用以及删除用户userdel
- 72-用户管理-03-id查看UID和GID以及passwd文件介绍
- 73-用户管理-04-who和whoami
- 74-用户管理-05-usermod设置主组和附加组
- 75-用户管理-06-usermod指定用户登录shell
- 76-用户管理-07-which查看命令所在位置
- 77-用户管理-08-su切换用户
- 78-用户管理-09-权限命令介绍和chown/chgrp演练
- 79-用户管理-10-chmod的数字表示法介绍
- 80-用户管理-11-chmod演练-R递归修改目录权限
1-10 系统信息

- 81-系统信息-01-学习目标
- 82-系统信息-02-date和cal查看系统时间
- 83-系统信息-03-df和du查看磁盘和目录空间占用
- 84-系统信息-04-进程概念介绍
- 85-系统信息-05-ps命令基本使用
- 86-系统信息-06-top命令基本使用
- 87-系统信息-07-kill命令基本使用
1-11 其他命令

- 88-其他命令-01-学习目标以及find命令的基本使用
- 89-其他命令-02-文件软链接的概念介绍
- 90-其他命令-03-文件软链接的演练步骤确定
- 91-其他命令-04-文件软链接的演练实现
- 92-其他命令-05-文件硬链接演练
- 93-其他命令-06-文件软硬链接工作方式简介
1-12 打包压缩

- 94-打包压缩-01-tar包简介和命令格式介绍
- 95-打包压缩-02-打包和解包演练
- 96-打包压缩-03-gzip压缩和解压缩介绍和演练
- 97-打包压缩-04-bzip2压缩和解压缩介绍和演练
1-13 ubuntu软件安装

- 98-软件安装-01-apt简介及命令格式介绍
- 99-软件安装-02-apt软件安装演练
- 100-软件安装-03-设置软件源
1-14 vi编辑器

- 001-vi简介-01-学习vi的目的
- 002-vi简介-02-vi和vim以及vi的特点
- 003-打开文件-01-打开或者新建文件
- 004-打开文件-02-打开文件并且定义指定行
- 005-打开文件-03-删除交换文件
- 006-工作模式-01-职责以及切换方式
- 007-工作模式-02-工作模式切换演练
- 008-vi命令-01-学习线路图
- 009-移动命令-01-方向和行内移动
- 010-移动命令-02-行数跳转和上下翻页
- 011-移动命令-03-段落切换和括号切换
- 012-移动命令-04-利用标记返回之前需要编辑的代码位置
- 013-选中命令-01-三种选择文本的方式
- 014-撤销和删除-01-撤销和恢复命令介绍
- 015-撤销和删除-02-删除命令演练
- 016-撤销和删除-03-撤销和恢复撤销
- 017-复制和粘贴-01-复制和粘贴演练
- 018-复制和粘贴-02-系统剪切板的内容不能使用p粘贴
- 019-替换命令
- 020-缩排以及重复执行
- 021-查找字符串或者单词
- 022-查找并替换-01-全局替换
- 023-查找并替换-02-替换可视区域
- 024-查找并替换-03-确认替换
- 025-进入编辑模式的6个命令
- 026-编辑命令演练-01-和数字的连用
- 027-编辑命令演练-02-利用可视块给多行代码增加注释
- 028-分屏命令-01-末行命令扩展
- 029-分屏命令-02-w命令阶段性备份代码
- 030-分屏命令-03-分屏命令演练
第二章 python基础v3.1

2-1 Python简介

- 001-Python简介-01-Python的起源 免费试学
- 002-Python简介-02-编译型语言和解释型语言 免费试学
- 003-Python简介-03-Python的设计目标 免费试学
- 004-Python简介-04-Python的设计哲学 免费试学
- 005-Python简介-05-为什么选择Python? 免费试学
- 006-Python简介-06-Python的特点和面相对象基本概念 免费试学
- 007-Python简介-07-Python的优缺点 免费试学
2-2 第一个程序

- 008-第一个程序-01-目标确定 免费试学
- 009-第一个程序-02-python程序的格式以及扩展名 免费试学
- 010-第一个程序-03-Hello Python程序演练 免费试学
- 011-第一个程序错误排查-01-程序开发中的错误及原因 免费试学
- 012-第一个程序错误排查-02-手误错误 免费试学
- 013-第一个程序错误排查-03-一行代码不要做多件事情 免费试学
- 014-第一个程序错误排查-04-缩进错误 免费试学
- 015-第一个程序错误排查-05-Python2默认不支持中文 免费试学
- 016-Python2和Python3的介绍 免费试学
2-3 Python执行方式和Pycharm设置

- 017-执行Python的方式-01-解释器运行及其他几种解释器简介 免费试学
- 018-执行Python的方式-02-官方解释器交互式运行程序 免费试学
- 019-执行Python的方式-03-IPython 免费试学
- 020-执行Python的方式-04-集成开发环境IDE简介 免费试学
- 021-执行Python的方式-05-PyCharm简介 免费试学
- 022-执行Python的方式-06-PyCharm快速体验 免费试学
- 023-PyCharm初始设置-01-目标确定 免费试学
- 024-PyCharm初始设置-02-恢复初始设置 免费试学
- 025-PyCharm初始设置-03-第一次启动PyCharm 免费试学
- 026-PyCharm初始设置-04-项目简介/明确目录的作用 免费试学
- 027-PyCharm初始设置-05-打开认识Python项目 免费试学
- 028-PyCharm初始设置-06-设置解释器版本 免费试学
- 029-PyCharm初始设置-07-项目和文件名的命名规则 免费试学
- 030-PyCharm初始设置-08-新建项目演练 免费试学
- 031-PyCharm初始设置-09-设置编辑区域和控制台的字体显示 免费试学
- 032-PyCharm初始设置-10-PyCharm专业版的安装和启动 免费试学
- 033-PyCharm初始设置-11-设置PyCharm专业版的启动图标 免费试学
- 034-PyCharm初始设置-12-程序安装过程及文件目录介绍 免费试学
- 035-PyCharm初始设置-13-卸载之前版本的PyCharm 免费试学
- 036-PyCharm初始设置-14-PyCharm教育版的安装和启动 免费试学
- 037-PyCharm初始设置-15-确定课程演练的PyCharm版本 免费试学
- 038-多文件项目演练 免费试学
2-4 程序的注释和算术运算符

- 039-程序的注释-01-注释的作用 免费试学
- 040-程序的注释-02-单行注释 免费试学
- 041-程序的注释-03-解释器不会解释#右侧的内容 免费试学
- 042-程序的注释-04-在代码末尾增加单行注释 免费试学
- 043-程序的注释-05-多行注释 免费试学
- 044-程序的注释-06-注释的使用以及代码规范文档 免费试学
- 045-算数运算符 免费试学
2-5 程序执行原理

- 046-程序执行原理-01-明确目标 免费试学
- 047-程序执行原理-02-计算机中的三大件 免费试学
- 048-程序执行原理-03-计算机三大件特点的问答 免费试学
- 049-程序执行原理-04-程序执行原理简介 免费试学
- 050-程序执行原理-05-Python程序执行原理 免费试学
- 051-程序执行原理-06-明确程序的作用 免费试学
- 052-程序执行原理-07-明确变量负责保存数据 免费试学
2-6 变量的使用以及类型

- 053-变量的使用-01-明确目标和变量定义 免费试学
- 054-变量的使用-02-使用PyCharm定义QQ变量 免费试学
- 055-变量的使用-03-超市买苹果 免费试学
- 056-变量的使用-04-PyCharm单步执行查看变量值 免费试学
- 057-变量的使用-05-超市买苹果变量的定义和使用 免费试学
- 058-变量的类型-01-明确演练需求/项目文件准备 免费试学
- 059-变量的类型-02-个人信息案例演练 免费试学
- 060-变量的类型-03-[扩展]PyCharm的调试细节-调试之前先继续执行程序 免费试学
- 061-变量的类型-04-Python中的变量类型 免费试学
- 062-变量的类型-05-type函数查看变量类型 免费试学
- 063-变量的类型-06-Python2.x区分int和long 免费试学
2-7 变量的计算和输入输出

- 064-变量间的计算-01-数字型变量可以直接计算 免费试学
- 065-变量间的计算-02-拼接字符串的两种方式 免费试学
- 066-变量的输入输出-01-输入和函数的概念 免费试学
- 067-变量的输入输出-02-input函数的基本使用 免费试学
- 068-变量的输入输出-03-类型转换函数介绍 免费试学
- 069-变量的输入输出-04-买苹果增强版演练 免费试学
- 070-变量的输入输出-05-提出问题—从控制台输入数字需要两个变量处理 免费试学
- 071-变量的输入输出-06-单步执行确认变量数量 免费试学
- 072-变量的输入输出-07-买苹果案例改进 免费试学
- 073-变量的输入输出-08-格式化输出语法介绍 免费试学
- 074-变量的输入输出-09-格式化输出字符串变量 免费试学
- 075-变量的输入输出-10-格式化输出整数变量 免费试学
- 076-变量的输入输出-11-格式化输出浮点型变量 免费试学
- 077-变量的输入输出-12-格式化输出%及小结 免费试学
2-8 变量的命名

- 078-变量的命名-01-标识符的概念及命名要求 免费试学
- 079-变量的命名-02-关键字的概念和查看关键字列表 免费试学
- 080-变量的命名-03-Python中的变量命名规则 免费试学
2-9 if判断语句

- 081-判断语句-01-判断在生活中的应用场景
- 082-if基础-01-if语句基本语法介绍
- 083-if基础-02-判断年龄演练
- 084-if基础-03-比较运算符简介
- 085-if基础-04-if语句和缩进部分是一个完整的代码块
- 086-if基础-05-PyCharm代码块及光标位置提示
- 087-if基础-06-else的语法格式
- 088-if基础-07-判断年龄改进版
- 089-if基础-08-由控制台输入年龄-不同类型不能直接比较
- 090-if基础-09-if else可以看成一个完整的代码块
- 091-逻辑运算-01-逻辑运算符简介
- 092-逻辑运算-02-案例1判断年龄
- 093-逻辑运算-03-案例2考试成绩
- 094-逻辑运算-04-案例3非公勿入
- 095-elif-01-语法介绍及应用场景
- 096-elif-02-女友的节日案例
- 097-if嵌套-01-if嵌套的应用场景
- 098-if嵌套-02-if嵌套的语法
- 099-if嵌套-03-火车站安检-检查车票
- 100-if嵌套-04-[扩展]PyCharm使用Tab统一增加缩进
- 101-if嵌套-05-火车站安检-检查刀的长度
2-10 石头剪刀布

- 102-石头剪刀布-01-明确目标和需求
- 103-石头剪刀布-02-玩家和电脑出拳
- 104-石头剪刀布-03-判断胜负
- 105-石头剪刀布-04-[扩展]增加换行调整条件判断代码格式
- 106-石头剪刀布-05-随机数的使用
- 107-石头剪刀布-06-电脑随机出拳
2-11 while循环基本使用

- 108-循环-01-目标确定
- 109-循环-02-三大流程介绍
- 110-循环基础-01-基础语法介绍和常用的应用场景
- 111-循环基础-02-第一个while循环
- 112-循环基础-03-单步调试while循环
- 113-循环基础-04-死循环的概念及解决方法
- 114-循环基础-05-Python中的赋值运算符
- 115-循环基础-06-程序计数从0开始
- 116-循环计算-01-思路分析
- 117-循环计算-02-0到100数字累加
- 118-循环计算-03-偶数求和-准备偶数
- 119-循环计算-04-偶数求和-计算结果
2-12 循环嵌套

- 120-break和continue-01-break关键字的应用场景
- 121-break和continue-02-break代码演练
- 122-break和continue-03-continue关键字的应用场景
- 123-break和continue-04-continue代码演练
- 124-循环嵌套-01-基本语法
- 125-循环嵌套-02-使用字符串运算直接输出小星星
- 126-循环嵌套-03-[扩展]print函数的结尾处理
- 127-循环嵌套小星星-01-输出行并且确定思路
- 128-循环嵌套小星星-02-嵌套循环完成案例
- 129-九九乘法表-01-明确思路和步骤
- 130-九九乘法表-02-打印9行小星星
- 131-九九乘法表-03-九九乘法表数据输出
- 132-九九乘法表-04-使用转义字符调整格式
2-13 函数的基本使用

- 133-函数-01-明确学习目标
- 134-函数-02-函数的概念以及作用
- 135-函数-03-函数的快速体验
- 136-函数基本使用-01-函数定义语法
- 137-函数基本使用-02-第一个函数演练
- 138-函数基本使用-03-函数的定义以及调用执行线路图
- 139-函数基本使用-04-应该先定义函数再调用函数
- 140-函数基本使用-05-[扩展]单步越过和单步进入
- 141-函数基本使用-06-函数的文档注释
2-14 函数的参数和返回值

- 142-函数参数-01-没有参数的函数过于死板
- 143-函数参数-02-函数参数的使用以及作用
- 144-函数参数-03-形参和实参
- 145-函数的返回值-01-返回值的应用场景和格式
- 146-函数的返回值-02-改造求和函数
- 147-函数的返回值-03-retrun关键字的注意事项
2-15 函数的嵌套调用

- 148-函数的嵌套调用-01-函数嵌套调用的执行线路图
- 149-函数的嵌套调用-02-[扩展]用百度网站举例说明函数的调用线路
- 150-分隔线演练-01-利用参数增加分隔线的灵活度
- 151-分隔线演练-02-打印多条分隔线
- 152-分隔线演练-03-增加多行分隔线函数的参数
- 153-分隔线演练-04-[扩展]PyCharm给函数增加文档注释
2-16 模块的简介

- 154-模块-01-概念介绍
- 155-模块-02-使用模块演练
- 156-模块-03-模块名也是一个标识符
- 157-模块-04-[科普]pyc文件可以提高程序执行速度
2-17 列表

- 158-高级变量-01-学习目标确定
- 159-列表-01-作用和定义方式
- 160-列表-02-存储数据的方式以及从列表中取值
- 161-列表-03-确认列表常用操作的方法
- 162-列表-04-从列表中取值和取索引
- 163-列表-05-修改指定位置的数据
- 164-列表-06-向列表增加数据
- 165-列表-07-从列表删除数据
- 166-列表-08-使用del关键字从列表删除数据
- 167-列表-09-列表统计及删除方法扩展
- 168-列表-10-列表的排序和反转
- 169-列表-11-关键字、函数和方法的特点和区别
- 170-列表-12-迭代遍历
- 171-列表-13-列表的应用场景
2-18 元组

- 172-元组-01-特点以及和列表的区别
- 173-元组-02-元组变量的定义
- 174-元组-03-元组变量的常用操作
- 175-元组-04-元组变量的循环遍历
- 176-元组-05-元组的应用场景
- 177-元组-06-元组和格式化字符串
- 178-元组-07-元组和列表之间的转换
2-19 字典

- 179-字典-01-字典的定义格式以及键值对的概念
- 180-字典-02-变量的定义以及应用场景
- 181-字典-03-字典的增删改查常用操作
- 182-字典-04-字典的统计、合并、清空操作
- 183-字典-05-字典的循环遍历
- 184-字典-06-字典和列表组合的应用场景
2-20 字符串

- 185-字符串-01-定义和基本使用
- 186-字符串-02-长度、计数、位置方法演练
- 187-字符串-03-常用方法总览和分类
- 188-字符串-04-判断空白字符以及学习方法分享
- 189-字符串-05-判断数字的三个方法
- 190-字符串-06-字符串的查找和替换
- 191-字符串-07-文本对齐方法演练
- 192-字符串-08-去除空白字符
- 193-字符串-09-拆分和拼接字符串
- 194-字符串-10-切片概念和语法以及倒序索引
- 195-字符串-11-字符串切片演练
2-21 容器类型公共方法

- 196-公共方法-01-内置函数长度、删除、最大、最小、比较
- 197-公共方法-02-切片
- 198-公共方法-03-算数运算符及对比列表追加方法
- 199-公共方法-04-成员运算符
- 200-公共方法-05-完整的for循环-for else
- 201-公共方法-06-利用for else搜索字典列表-for else
2-22 名片管理系统

- 202-名片管理-01-明确目标及备课代码演示
- 203-框架搭建-01-框架介绍及系统架构分析
- 204-框架搭建-02-新建项目准备文件
- 205-框架搭建-03-用户输入判断和pass关键字
- 206-框架搭建-04-无限循环保证用户能够重复选择操作
- 207-框架搭建-05-if嵌套判断用户的具体操作预留代码位置
- 208-框架搭建-06-cards_main知识点小结
- 209-框架搭建-07-[扩展]TODO注释及格式
- 210-框架搭建-08-显示欢迎界面及功能菜单
- 211-框架搭建-09-准备名片操作函数修改主文件中函数调用
- 212-数据结构确定-01-确定名片管理系统的数据结构
- 213-新增名片-01-新增名片功能实现
- 214-新增名片-02-[扩展]PyCharm技巧重命名变量名
- 215-显示全部-01-遍历列表显示字典明细
- 216-显示全部-02-判断列表数量,没有名片直接返回
- 217-查询名片-01-查询功能实现
- 218-查询名片-02-准备处理名片函数
- 219-处理名片-01-增加分支判断用户操作类型
- 220-处理名片-02-删除名片
- 221-处理名片-03-修改名片
- 222-处理名片-04-明确细化修改名片的思路,准备新的输入函数
- 223-处理名片-05-实现修改名片输入函数
- 224-处理名片-06-增加文档注释、删除TODO标记
- 225-运行程序-01-增加Shebang符号直接运行Python程序
2-23 变量的引用以及是否可变

- 226-变量的引用-01-变量的引用概念
- 227-变量的引用-02-调用函数传递实参的引用
- 228-变量的引用-03-函数返回值传递引用
- 229-可变类型和不可变类型-01-基本概念
- 230-可变类型和不可变类型-02-列表、字典的修改和赋值
- 231-可变类型和不可变类型-03-字典的key不能是可变类型
2-24 局部变量和全局变量

- 232-局部变量和全局变量-01-基本概念和区别
- 233-局部变量-01-代码演练
- 234-局部变量-02-变量的生命周期
- 235-局部变量-03-不同函数内的同名局部变量
- 236-全局变量-01-基本代码演练
- 237-全局变量-02-[扩展]PyCharm的单步跟踪技巧
- 238-全局变量-03-函数内部不允许修改局部变量的值
- 239-全局变量-04-单步调试确认局部变量的定义
- 240-全局变量-05-global关键字修改全局变量
- 241-全局变量-06-全局变量定义的位置及代码结构
- 242-全局变量-07-全局变量命名的建议
2-25 函数的返回值和参数进阶

- 243-函数参数和返回值的作用
- 244-函数的返回值-01-利用元组返回多个值
- 245-函数的返回值-02-接收返回元组函数的方式
- 246-函数的返回值-03-交换两个变量的值
- 247-函数的参数-01-在函数内部针对参数赋值不会影响外部实参
- 248-函数的参数-02-在函数内部使用方法修改可变参数会影响外部实参
- 249-函数的参数-04-列表使用+=本质上是调用extend方法
- 250-缺省参数-01-回顾列表的排序方法明确缺省参数的概念及作用
- 251-缺省参数-02-指定函数缺省参数的默认值
- 252-缺省参数-03-缺省参数的注意事项
- 253-多值参数-01-定义及作用
- 254-多值参数-02-数字累加案例演练
- 255-多值参数-03-元组和字典的拆包
- 256-递归-01-递归的特点及基本代码演练
- 257-递归-02-递归演练代码的执行流程图
- 258-递归-03-递归实现数字累加
- 259-递归-04-数字累加的执行流程图
第三章 面向对象v3.1

3-1 面向对象基础

- 001-面向对象-01-基本概念 免费试学
- 002-面向对象-02-类和对象基本概念 免费试学
- 003-面向对象-03-设计类的三要素和名词提炼法 免费试学
- 004-面向对象-04-内置的dir函数查询对象的方法列表 免费试学
- 005-定义简单类-01-基本语法 免费试学
- 006-定义简单类-02-案例演练 免费试学
- 007-定义简单类-03-接收对象的变量同样是对对象的引用 免费试学
- 008-定义简单类-04-创建多个猫对象 免费试学
- 009-self-01-在类的外部给对象增加属性 免费试学
- 010-self-02-利用self在类封装的方法中输出对象属性 免费试学
- 011-初始化方法-01-在类的外部给对象增加属性的隐患 免费试学
- 012-初始化方法-02-创建对象时自动调用初始化方法 免费试学
- 013-初始化方法-03-在初始化方法中定义属性 免费试学
- 014-初始化方法-04-使用参数设置属性初始值 免费试学
- 015-内置方法-01-del方法和对象的生命周期 免费试学
- 016-内置方法-02-str方法定制变量输出信息 免费试学
3-2 面向对象练习

- 017-小明爱跑步-01-封装特性和需求分析 免费试学
- 018-小明爱跑步-02-案例完成 免费试学
- 019-小明爱跑步-03-扩展-多个对象属性之间互不干扰 免费试学
- 020-摆放家具-01-需求分析-被使用的类应该先开发 免费试学
- 021-摆放家具-02-家具类以及创建家具对象 免费试学
- 022-摆放家具-03-定义房子类 免费试学
- 023-摆放家具-04-完成添加家具方法 免费试学
- 024-封装案例-01-需求分析-属性可以是另外一个类创建的对象 免费试学
- 025-封装案例-02-创建(qiang)类 免费试学
- 026-封装案例-03-创建士兵类-完成初始化方法 免费试学
- 027-封装案例-04-完成开火方法 免费试学
- 028-封装案例-05-身份运算符-判断None应该使用 is 免费试学
- 029-私有属性和方法-01-应用场景、定义方式和演练 免费试学
- 030-私有属性和方法-02-伪私有属性和方法 免费试学
3-3 单继承和方法的重写

- 031-单继承-01-问题的抛出-单纯封装可能会出现重复的代码 免费试学
- 032-单继承-02-继承的概念和语法 免费试学
- 033-单继承-03-继承相关的术语-继承和派生 免费试学
- 034-单继承-04-继承的传递性 免费试学
- 035-单继承-05-继承传递性的注意事项 免费试学
- 036-方法的重写-01-覆盖父类方法,重写子类方法实现 免费试学
- 037-方法的重写-02-扩展父类方法,super对象调用父类方法 免费试学
- 038-方法的重写-03-使用父类名调用父类方法 免费试学
3-4 私有方法和属性

- 039-私有属性和方法-01-子类对象不能直接访问
- 040-私有属性和方法-02-通过父类方法间接访问
3-5 多继承

- 041-多继承-01-概念、语法和基本演练
- 042-多继承-02-注意父类之间注意不要有重名方法或属性
- 043-多继承-03-MRO方法搜索顺序
- 044-多继承-04-新式类和经典类
3-6 多态

- 045-多态-01-基本概念
- 046-多态-02-案例演练
3-7 类属性、类方法、静态方法

- 047-类属性-01-创建对象的过程以及实例的概念
- 048-类属性-02-类是一个特殊的对象
- 049-类属性-03-类属性的定义及使用
- 050-类属性-04-属性查找机制-向上查找
- 051-类属性-05-使用对象名+类属性赋值语句会创建实例属性
- 052-类方法-01-基本语法
- 053-类方法-02-案例演练
- 054-静态方法-01-应用场景和定义方式
- 055-方法综合-01-案例分析
- 056-方法综合-02-案例演练
- 057-方法综合-03-确定方法类型的套路
3-8 单例模式

- 058-单例-01-设计模式和单例设计模式概念
- 059-单例-02-new方法的作用
- 060-单例-03-重写new方法
- 061-单例-04-单例设计模式思路分析
- 062-单例-05-单例设计模式代码实现
- 063-单例-06-初始化动作只执行一次
3-9 异常

- 064-异常-01-异常的概念以及抛出异常的原因
- 065-异常-02-简单的异常捕获
- 066-异常-03-根据错误类型捕获异常
- 067-异常-04-捕获未知错误
- 068-异常-05-异常捕获的完整语法
- 069-异常-06-异常的传递性
- 070-异常-07-主动抛出异常的应用场景
- 071-异常-08-主动抛出异常案例演练
3-10 模块和包

- 072-模块-01-基本概念和import导入复习
- 073-模块-02-import导入时指定别名
- 074-模块-03-from import局部导入
- 075-模块-04-from import导入同名工具
- 076-模块-05-from import导入所有工具
- 077-模块-06-模块搜索顺序
- 078-模块-07-开发原则以及导入文件时会执行没有缩进的代码
- 079-模块-08-__name__属性兼顾测试和导入两种模式
- 080-包-01-包的概念以及建立包的方式
- 081-包-02-封装模块、设置__init__和外界导入包
- 082-制作模块-01-明确目的和介绍步骤
- 083-制作模块-02-制作模块压缩包
- 084-制作模块-03-安装模块压缩包
- 085-制作模块-04-卸载已经安装过的模块
- 086-pip-使用pip安装pygame模块
3-11 文件操作

- 087-文件-文件概念以及文本文件和二进制文件的区别
- 088-文件操作-01-文件操作套路以及Python中的对应函数和方法
- 089-文件操作-02-读取文件内容
- 090-文件操作-03-读取文件后文件指针会发生变化
- 091-文件操作-04-打开文件方式以及写入和追加数据
- 092-文件操作-05-使用readline分行读取大文件
- 093-文件操作-06-小文件复制
- 094-文件操作-07-大文件复制
- 095-导入os模块执行文件和目录管理操作
3-12 文本编码

- 096-文本编码-01-文本文件的编码方式ASCII和UTF8
- 097-文本编码-02-怎么样在Python2.x中使用中文
- 098-文本编码-03-Python2.x处理中文字符串
3-13 内建函数eval

- 099-eval-01-基本使用
- 100-eval-02-[扩展]不要直接转换input结果
第四章 【项目】飞机大战v3.1

4-1 项目准备

- 001-项目实战-01-明确目标和实战步骤
- 002-项目实战-02-确认pygame模块正确安装
- 003-快速体验-01-项目准备及游戏的第一印象
4-2 游戏窗口和绘制图像

- 004-游戏窗口-01-游戏的初始化和退出
- 005-游戏窗口-02-pygame的坐标系
- 006-游戏窗口-03-pygame.Rect描述矩形区域
- 007-游戏窗口-04-创建游戏窗口和游戏循环
- 008-绘制图像-01-绘制图像的三个步骤
- 009-绘制图像-02-绘制英雄和透明图像
- 010-绘制图像-03-update方法的作用
- 011-介绍计算机中的动画实现原理
4-3 游戏循环和键盘事件

- 012-游戏循环-01-基本概念明确下一步目标
- 013-游戏循环-02-利用时钟设置游戏循环的刷新帧率
- 014-游戏循环-03-英雄动画效果实现
- 015-游戏循环-04-英雄循环飞行以及作业
- 016-事件监听-01-基本概念和event模块的get方法
- 017-事件监听-02-监听退出事件并且退出游戏
4-4 精灵和精灵组

- 018-精灵和精灵组-01-基本概念
- 019-精灵和精灵组-02-自定义精灵子类需求分析
- 020-精灵和精灵组-03-派生精灵子类代码实现
- 021-精灵和精灵组-04-创建敌机并且实现敌机动画
4-5 框架搭建

- 022-框架搭建-01-明确飞机游戏类的设计
- 023-框架搭建-02-明确文件职责准备主游戏类
- 024-框架搭建-03-游戏初始化
- 025-框架搭建-04-使用常量定义游戏窗口大小
- 026-框架搭建-05-搭建启动游戏方法结构
4-6 背景图像

- 027-背景图像-01-交替滚动实现思路分析
- 028-背景图像-02-背景类的设计与基本实现
- 029-背景图像-03-背景图像的交替滚动实现
- 030-背景图像-04-利用初始化方法简化背景精灵的创建
4-7 敌人飞机

- 031-敌机-01-定时器语法介绍
- 032-敌机-02-定义并且监听创建敌机的定时器事件
- 033-敌机-03-设计并准备敌机类
- 034-敌机-04-定时创建并显示敌机精灵
- 035-敌机-05-随机位置以及随机速度
- 036-敌机-06-销毁飞出屏幕的敌机
4-8 英雄飞机

- 037-英雄-01-需求分析和类设计
- 038-英雄-02-准备英雄类
- 039-英雄-03-绘制英雄
- 040-英雄-04-两种按键方式对比
- 041-英雄-05-控制英雄左右移动
- 042-英雄-06-英雄边界控制
4-9 发射子弹以及碰撞检测

- 043-发射子弹-01-添加并监听英雄发射子弹事件
- 044-发射子弹-02-定义子弹类
- 045-发射子弹-03-发射子弹
- 046-发射子弹-04-一次发射三枚子弹
- 047-碰撞检测-01-子弹摧毁敌机
- 048-碰撞检测-02-敌机撞毁英雄
阶段二 Python和Linux高级编程
展开第一章 网络编程v3.1

1-1 基本概念

- 01-网络通信概述
- 02-IP地址
- 03-Linux、windows查看网卡信息
- 04-ip地址的分类-ipv4和ipv6介绍
- 05-(重点)端口
- 06-端口分类:知名端口、动态端口
- 07-socket介绍
1-2 udp

- 08-udp发送数据demo-1
- 09-udp发送数据-demo-2
- 10-关闭VMware的虚拟网卡(了解)
- 11-udp发送数据的强调
- 12-(重点)运行python程序以及python交互模式,encode编码,发送udp的练习
- 13-(重点)接收udp数据
- 14-(重点)端口绑定的问题
- 15-网络中重要概念复习
- 16-输入对方ip、port、全双工、半双工、单工等
- 17-案例:udp聊天器
1-3 tcp客户端

- 01-tcp介绍
- 02-(重点)tcp客户端
1-4 tcp服务器

- 03-(重点)tcp服务器-1
- 04-(重点)tcp服务器-2-循环为多个客户端服务
- 05-(重点)tcp服务器-3-循环为多个客户端服务
1-5 tcp下载文件

- 06-案例:下载文件
- 07-知识点快速总结,listen里的参数
- 08-QQ不绑定端口、昨日知识点复习
第二章 多任务v3.1

2-1 线程

- 01-多任务介绍、以及Thread的基本使用
- 02-Thread创建线程 完成多任务
- 03-查看正在运行的线程、主线程等待子线程先结束
- 04-通过继承Thread类完成创建线程
- 05-通过继承Thread类完成创建线程-补充
- 06-多线程共享全局变量
- 07-多线程共享全局变量-args参数
- 08-创建线程是指定传递的参数、多线程共享全局变量的问题
- 09-同步概念、互斥锁解决资源竞争的问题
- 10-死锁、银行家算法
- 11-案例:多线程版udp聊天器
2-2 进程

- 01-线程知识点复习
- 02-进程、程序的概念
- 03-使用Process完成多进程
- 04-使用Process完成多进程-补充
- 05-获取pid、ppid、给Process传递参数、运行顺序不确定、主进程等待子进程先结束、进程不共享全局变量
- 06-进程、线程的区别
- 07-通过队列完成进程间通信
- 08-进程池概述
- 09-进程池的创建
- 10-案例:多任务文件夹copy
2-3 协程

- 01-迭代器
- 02-完善迭代器
- 03-(重点)迭代器的应用
- 04-迭代器使用的其他方式
- 05-生成器-1
- 06-生成器-2-send方式
- 07-(重点)生成器-小总结
- 08-使用yield完成多任务
- 09-使用greenlet、gevent完成多任务
- 10-案例:图片下载器
- 11-(重点)进程、线程、协程对比
- 01-迭代器-禁用掉
第三章 【项目】web服务器v3.1

3-1 正则表达式

- 01-正则表达式简介
- 02-匹配单个字符-1
- 03-匹配单个字符-2
- 04-匹配多个字符
- 05-案例:简单判断变量名是否符合要求、匹配结尾开头
- 06-案例:简单判断email、转义
- 07-分组等
- 08-re的高级用法:search、sub等
- 09-案例:提取数据内容,清除不要的杂数据
- 10-r的作用
3-2 http协议

- 01-此阶段知识的介绍
- 02-HTTP协议的通俗讲解
- 03-通过网络调试助手充当http服务器来验证http协议
3-3 简单web服务器实现

- 04-案例:返回固定页面的http服务器
- 05-tcp3次握手、4次挥手
- 06-tcp3次握手、4次挥手-强调
- 07-案例:返回浏览器需要的页面http服务器-介绍
- 08-案例:返回浏览器需要的页面http服务器-代码实现
3-4 并发web服务器实现

- 01-http协议复习
- 02-多进程、线程实现http服务器
- 03-多进程、线程实现http服务器-补充
- 04-gevent实现http服务器
- 05-(重要)单进程、线程、非堵塞实现并发的原理
- 06-单进程、线程、非堵塞实现并发的验证-1
- 07-单进程、线程、非堵塞实现并发的验证-2、debug的思想
- 08-知识点补充,把对象append到列表时,仅仅是添加了对象的引用
- 09-长连接、短连接
- 10-单进程、线程、非堵塞、长连接的http服务器
- 11-(重要)epoll的原理过程讲解
- 12-epoll版的http服务器
3-5 网络通信

- 01-tcp ip协议
- 02-wireshark抓包工具-安装
- 03-wireshark抓包工具-使用
- 04-2台电脑通信、网络掩码
- 05-集线器、交换器组网、arp获取mac地址等
- 06-路由器链接多个网络、默认网关
- 07-浏览器访问服务器的过程
- 08-ip不变、mac地址发生变化
第四章 Python高级语法v3.1

4-1 GIL锁

- 01-GIL-1
- 02-GIL-2
4-2 深拷贝和浅拷贝

- 03-深拷贝、浅拷贝-1
- 04-深拷贝、浅拷贝-2
- 05-深拷贝、浅拷贝-3
- 06-深拷贝、浅拷贝-4
4-3 私有化、import、封装继承多态

- 07-私有化
- 08-import导入模块
- 09-多个模块import导入注意点
- 10-再议封装、继承、多态
4-4 方法解析顺序表MRO

- 01-(重点)多继承中的MRO顺序
- 02-(重点)※args、※※kwargs的另外用处拆包
- 03-单继承中MRO、继承的面试题
4-5 类对象和实例对象访问属性的区别和property属性

- 04-类对象、实例对象、类方法、实例方法、类属性、实例属性、静态方法
- 05-(重点)property属性
- 06-property属性的应用
- 07-创建property属性的方式-装饰器
- 08-创建property属性的方式-类属性
- 09-property属性的应用2
4-6 私有属性和名字重整、魔法属性和方法、上下文管理器

- 10-修改、查看私有属性、名字重整
- 11-魔法属性、方法
- 12-面向对象设计
- 13-(重点)with、上下文管理器
第五章 MySQL数据库v3.1

5-1 数据库的基本使用

- 01-课程介绍
- 02-数据库介绍
- 03-RDBMS、MySQL介绍
- 04-MySQL服务器、客户端安装以及使用
- 05-通过navicat操作数据库
- 06-数据类型、约束
- 07-(重点)-数据库的操作
- 08-(重点)-数据表的操作
- 09-(重重点)-数据的增删改查
5-2 数据库查询

- 01-课程介绍
- 02-数据准备、基本的查询
- 03-条件查询
- 04-范围查询、null
- 05-排序
- 06-聚合、分组
- 07-分页
- 08-链接查询
- 09-自关联
- 10-子查询-简单
- 11-数据库设计
5-3 MySQL与Python交互

- 01-数据的准备,基本查询
- 02-数据操作演练:拆为多个表
- 03-数据操作演练:拆为多个表2
- 04-python安装pymysql
- 05-python操作sql:查询数据
- 06-案例:京东商城-查询
- 07-python操作sql:添加、修改、删除数据
- 08-案例:京东商城-添加,防止SQL注入
- 09-作业要求
5-4 MySQL高级

- 01-视图
- 02-事务-1
- 03-事务-2
- 04-索引-1
- 05-索引-2
- 06-(了解)账户管理
- 07-MySQL主从
第六章 【项目】mini-web框架v3.1

6-1 WSGI-mini-web框架

- 01-课程介绍
- 02-多进程-面向对象-web服务器
- 03-静态资源、动态资源、web服务器支持动态解析
- 04-静态、动态资源强调
- 05-实现很简单的框架,让web服务器支持
- 06-(重点)WSGI的介绍
- 07-web服务器支持WSGI
- 08-web服务器通过字典将需要的参数传递给mini_frame框架
- 09-mini_frame获取页面模板数据
- 10-mini_frame替换模板中的数据,成为一个新页面
- 11-给程序传递参数、添加web服务器的配置文件、添加shell功能
6-2 闭包

- 01-闭包-1
- 02-闭包-2
- 03-闭包-3-补充
- 04-闭包-4-修改数据
6-3 装饰器

- 05-装饰器-1-介绍
- 06-装饰器-2-手动实现装饰器
- 07-装饰器-3-作用demo、对有参数函数、无参数函数的装饰
- 08-装饰器-4-再理解
- 09-装饰器-5-不定长参数的函数装饰
- 10-装饰器-6-对应有返回值函数进行装饰、通用装饰器
- 11-装饰器-7-多个装饰器对同一个函数装饰
- 12-装饰器-8-多个装饰器对同一个函数装饰demo
- 13-装饰器-9-(了解)用类对函数进行装饰
6-4 mini-web框架添加路由和MySQL功能

- 01-带有参数的装饰器
- 02-用装饰器完成路由功能-1
- 03-用装饰器完成路由功能-2
- 04-用装饰器完成路由功能-3
- 05-用装饰器完成路由功能-4
- 06-静态、动态、伪静态url
- 07-让web服务器支持伪静态
- 08-mini_frame框架添加MySQL功能-1
- 09-mini_frame框架添加MySQL功能-2
6-5 mini-web框架添加正则和log日志功能

- 01-今日课程介绍
- 02-路由支持正则
- 03-关注股票
- 04-取消关注
- 05-更新备注信息
- 06-url编解码
- 07-log日志功能
6-6 元类

- 01-类也是对象、globals查看所有的全局对象引用
- 02-元类创建类,类创建实例对象
- 03-通过type来创建复杂的类,元类应用demo
- 04-元类应用demo-补充
6-7 orm

- 05-orm介绍
- 06-orm-实现
- 07-orm-实现2
- 08-python高级知识快速复习-1
- 09-python高级知识快速复习-2
阶段三 前端开发
展开第一章 HTML和CSSv3.1

1-1 html文档结构和常用标签

- 001前端概述
- 002html文档结构
- 003标题-段落-字符实体-换行
- 004语义标签-图片
- 005html复习1
- 006链接
- 007列表
1-2 表格标签和传统布局

- 008表格
- 009传统布局实例
- day02_001复习
1-3 表单标签

- 002表单01
- 003表单02
- 004表单03
1-4 CSS基本语法

- 005样式介绍
- 006引入样式的方式
1-5 CSS常用文本样式

- 006常用文本样式01
- 007css常用文本样式02
1-6 CSS样式选择器

- 008css选择器01
- 009css选择器02
1-7 盒子模型

- 010盒子模型
- 011盒子模型练习-盒子真实尺寸
- day03_001复习-标题练习
1-8 margin和overflow属性

- 002margin使用技巧
- 003margin使用技巧02
- 004margin合并及实例
- 005margin-top塌陷
- 006元素溢出
1-9 display属性

- 007块元素-内联元素
- 008内联块-实例
- 009display属性
1-10 浮动布局

- 010浮动01
- 011浮动02
- day04_001复习-练习
- 002用列表制作菜单
- 003清除浮动
1-11 定位布局

- 004定位
- 005定位实例
1-12 background属性

- 006background属性-实例
- day05_001复习-雪碧图背景列表练习
1-13 布局练习和图片格式

- 002布局练习
- 003图片格式
1-14 PS常用操作

- 004ps界面-移动选择-矩形框
- 005图层自由变换-选区移动-选区自由变换
- 006套索工具
- 007选区的操作
1-15 制作登陆页效果图

- 008效果图制作01
- 009效果图制作02
- day06_001练习复习
1-16 PS切图和制作雪碧图

- 002切图
- 003雪碧图制作
- 004雪碧图制作02
第二章 首页布局案例和移动布局v3.1

2-1 首页布局

- 005重置样式reset.css
- 006首页头部制作
- 007首页logo-搜索框-购物车
- day07_001练习
- 002首页布局03
- 003首页布局04
2-2 CSS3动画

- 004圆角-透明度-rgba
- 005transiton动画01
- 006transiton动画02
- 007transform
- day08_01复习-tansform变形-翻面动画01
- 002翻面动画02
- 003animation动画
- 004loading动画
- 005走路动画
2-3 CSS3选择器和CSS权重

- 006css3新增选择器
- 007css权重
2-4 屏幕适配

- 008视口-retina屏幕适配
- 009背景图尺寸设置
- 010流体布局
- 011响应式布局
2-5 移动端布局实例

- day09_001复习-rem布局原理
- 002cssrem安装-流体布局制作首页
- 003rem首页布局01
- 004rem首页布局02
- 005rem首页布局03
- 005rem首页布局04
2-6 CSS3前缀和H5新增标签

- 006css3前缀
- 007h5新增标签-表单控件-属性
第三章 JavaScriptv3.1

3-1 JavaScript变量和操作元素

- 008js介绍-js引入页面
- 009js变量类型-获取元素
- day10_001复习
- 002获取元素-改变元素属性
- 003操作元素属性
- 004中括号操作属性
- 005改变元素内容
3-2 JavaScript函数

- 006函数定义和调用
- 007提取行间事件
- 008复习-匿名函数
- 009网页换肤
- 010函数和变量预解析
- 011函数传参-return关键字
3-3 分支语句

- 012条件语句-切换例子
- 013多重条件判读语句
- day10_014作业
- day11_001复习
- 002加法运算练习
- 003求余-赋值运算符
- 004条件运算符
- 005switch语句
3-4 数组和循环语句

- 006数组及操作方法
- 007多维数组
- 008for循环-实例
- 009复习-数组去重
3-5 JavaScript组成和字符串

- 010标签获取元素-实例
- 011javascript组成
- 012字符串操作方法-实例
3-6 定时器和变量作用域

- 013定时器-动画实例
- day11_014作业
- day12_001复习
- 002往复运动动画
- 003无缝滚动01
- 004无缝滚动02
- 005变量作用域
- 006时钟
- 007倒计时
3-7 封闭函数和常用内置对象

- 008封闭函数
- 009常用内置对象01
- 010Math对象
- 011调试js的方法
- day12_012作业
- day13_001复习-倒计时弹框练习
第四章 jQuery和js库v3.1

4-1 jQuery介绍、加载和jQuery选择器

- 002jqury介绍-jquery加载
- 003jquery选择器01
- 004jquery选择器02
4-2 样式操作和click事件

- 005样式的操作
- 006绑定click事件
- 007索引值-选项卡
4-3 jQuery特效和链式调用

- 008jquery特性效果
- 009特性效果-链式调用-层级菜单
- 010修正反复点击持续动画的bug
4-4 jQuery animate动画

- 011animate动画
- day13_012作业
- day14_001复习
- 002滑动选项卡
4-5 元素的尺寸、位置和页面滚动事件

- 003元素尺寸-元素位置-加入购物车
- 004scrollleft-top-悬浮菜单
- 005悬浮菜单-滚动到顶部
4-6 元素属性操作和jQuery循环

- 006属性操作
- 007jquery循环
- 008手风琴01
- 009手风琴02
4-7 jQuery事件

- 010jquery事件
- day15_001复习
- 002bind绑定事件和解绑
- 003事件冒泡-阻止事件冒泡
- 004阻止事件冒泡-弹框实例
- 005事件委托
4-8 节点操作

- 006节点操作
- 007todolist01
- 008todolist02
4-9 整屏滚动

- 009整屏滚动01
- 010整屏滚动02
- day16_001复习
4-10 幻灯片

- 002幻灯片01
- 003幻灯片02
- 004幻灯片03
- 005幻灯片04
4-11 ajax和jsonp

- 006json
- 007配置服务器环境
- 008ajax01
- 009ajax02
- 010jsonp-360联想词获取
4-12 Jquery UI和本地存储

- 011jqueryui-拖拽
- 001本地存储
- 002只弹一次的弹框
4-13 移动端js事件和swiper库

- 003移动端js事件和库
- 004swiper参数设置-自定义
4-14 Bootstrap容器、栅格、按钮、表单

- 005bootstrap介绍-容器
- 006栅格系统
- 007栅格响应式原理
- 008栅格偏移-栅格隐藏
- 009按钮的创建
- day17_001复习
- 002表单-字体图标
4-15 Bootstrap菜单、对话框、布局实例

- 003菜单01
- 004菜单切换效果
- 005模态框
- 006js控制弹框弹出和隐藏
- 007布局实例01
- 008布局实例02
4-16 正则表达式和前端性能优化

- 009正则表达式-表单验证
- 010表单验证02
- 011前端性能优化
阶段四 Web全栈开发
展开第一章 Django框架

1-1 Django框架简介与环境搭建

- 01_MVC框架简介1
- 02_MVC框架简介
- 03_Django简介
- 04_虚拟环境的创建和使用
- 05_Django项目和应用创建
1-2 Django的基本使用

- 06_ORM简介
- 07_模型_模型类设计和表生成
- 08_模型_通过模型类操作数据表
- 09_模型_模型类关系和关系查询
- 10_Django后台管理
- 11_视图_使用
- 12_模板_使用
- 13_MVT综合案例
1-3 Model属性及后端配置

- 02_模型_Django配置使用mysql数据库
- 03_复习案例_1
- 04_复习案例_重定向
- 05_答疑_页面url地址的设置
- 06_模型_字段属性和选项
- 07_查询_相关函数1
- 08_查询_相关函数2
- 09_查询集
1-4 模型关系及相关操作

- 10_模型_模型类关系
- 11_模型_关联查询
- 12_模型_插入和删除
- 13_模型_自关联
- 14_模型_模型管理器对象
- 15_模型_模型管理器类和模型类关系
- 16_模型_元选项
1-5 登录案例

- 02_视图_url匹配的过程
- 03_视图_错误视图
- 04_视图_捕获url参数
- 05_视图_登录案例1
- 06_视图_登录案例2_request对象属性
- 07_视图_ajax请求
- 08_视图_ajax同步和异步
- 10_视图_ajax登录案例
1-6 cookie与session

- 11_状态保持_cookie
- 12_状态保持_cookie记住用户名
- 13_状态保持_session
- 14_状态保存_session记住登录状态
- 15_状态保持_cookie和session应用场景
1-7 模板templates

- 03_模板_模板文件使用
- 04_模板_模板文件加载顺序
- 05_模板语言_模板变量
- 06_模板语言_模板标签和过滤器
- 07_模板语言_自定义过滤器
- 08_模板语言_模板注释
- 09_模板语言_小结
- 10_模板_模板继承
- 11_模板_html转义
1-8 基于模板登录案例

- 12_模板_登录装饰器
- 15_模板_csrf伪造
- 16_模板_django_csrf防护
- 17_模板_验证码
- 18_模板_url反向解析
1-9 django功能-静态文件、中间件、后台

- 02_静态文件
- 03_中间件_概念
- 04_中间件_执行流程
- 05_中间件_小结
- 06_后台管理_列表页选项
- 07_后台管理_编辑页选项
- 08_后台管理_自定义页面
1-10 图片上传及分页

- 09_上传图片_后台管理页面上传
- 10_上传图片_自定义页面上传
- 11_分页
- 12_分页_小结
- 13_省市县案例_获取省
- 14_省市县案例_获取市和县
第二章 git版本管理

2-1 git基本操作

- 04_git_简介
- 05_git_版本创建
- 06_git_版本回退
- 07_git_工作区和暂存区
- 08_git_管理修改
- 09_git_撤销修改
- 10_git_对比文件不同
- 12_git_删除文件
- 14_补充_删除文件
- 13_git_基本操作小结
2-2 git分支管理

- 15_git分支_基本操作
- 16_git分支_解决冲突
- 17_git分支_分支管理策略
- 18_git分支_bug分支
- 19_git分支_小结
2-3 GitHub使用

- 20_github_创建仓库
- 21_github_添加ssh账户
- 22_github_克隆项目
- 23_github_推送代码
- 24_github_跟踪远程
- 25_github_拉取代码
- 26_工作git使用流程
第三章 redis数据库V3.1

3-1 redis安装和配置

- 01_redis_nosql和redis简介
- 02_redis_redis安装
- 03_redis_redis配置
- 04_redis_启动服务端和客户端
3-2 redis数据类型及其操作

- 05_redis数据类型_简介
- 06_redis数据类型_string和键命令
- 07_redis数据类型_hash命令mp4
- 08_redis数据类型_list命令
- 09_redis数据类型_set和zset命令
- 10_redis数据类型_小结
3-3 redis与python交互

- 11_redis_python和redis交互
- 12_redis_redis存储session信息
3-4 redis搭建主从服务

- 13_redis_主从概念
- 14_redis_主从配置
3-5 redis集群

- 15_redis_集群概念
- 16_redis_集群配置
- 17_redis_python和集群交互
第四章 天天生鲜Django项目

4-1 天天生鲜需求分析

- 02_天天生鲜_商业模式
- 03_天天生鲜_web项目开发流程
- 04_天天生鲜_需求分析
- 05_天天生鲜_架构预览
- 06_天天生鲜_架构设计
4-2 天天生鲜数据库设计

- 07_天天生鲜_数据库设计1
- 08_天天生鲜_数据库设计2
- 09_天天生鲜_模型类设计
- 10_天天生鲜_连接远程数据库
- 11_天天生鲜_choices选项和富文本编辑器
- 12_天天生鲜_项目框架搭建
4-3 用户注册

- 01_注册基本逻辑
- 02_显示注册页面和注册处理使用同一个url地址
- 03_类视图使用
- 04_类视图原理
- 05_生成激活用户token
- 06_注册用户激活流程
- 07_django内置函数发送激活邮件
- 08_用户注册流程小结
- 09_celery异步发送邮件
- 10_celery使用流程小结
4-4 用户登录

- 11_登录基本逻辑
- 12_配置redis作为Django缓存和session存储后端
- 13_记住用户名
4-5 用户中心

- 02_父模板页抽象
- 03_用户中心页面显示
- 04_登录装饰器和登录后页面跳转
- 05_LoginRequiredMixin类的使用
- 06_LoginRequiredMixin类的原理
- 07_登录后欢迎信息
- 08_退出用户登录
- 09_登录判断_欢迎信息_退出登录小结
- 10_用户中心_地址页
- 11_模型管理器类方法封装
- 12_用户中心_个人信息页
- 13_历史记录存储格式设计
- 14_获取用户历史浏览记录
4-6 分布式FastDFS文件系统

- 02_FastDFS文件系统简介
- 03_FastDFS上传文件和下载文件流程
- 04_FastDFS的安装和配置
- 05_Nginx配合FastDFS使用的安装和配置
- 06_python和FastDFS交互
- 07_虚拟机中FastDFS配置文件的修改
- 08_项目中上传和使用图片的流程
- 09_自定义文件存储类
- 10_amdin页面测试文件存储类
- 11_改进自定义文件存储类
- 12_FastDFS上传图片小结
4-7 天天生鲜首页

- 13_商品模型模型类概述
- 14_首页内容获取和展示
- 15_首页内容获取和展示小结
- 16_redis存储购物车记录分析
- 17_首页获取购物车商品数目
- 02_页面静态化_celery生成首页静态页面
- 03_配置nginx提交静态页面
- 04_admin管理更新首页数据表数据时重新生成index静态页面
- 05_静态index页面和IndexView的调度说明
- 06_首页数据缓存设置和获取
- 07_首页缓存数据的更新
- 08_页面静态化和缓存数据_小结
4-8 天天生鲜详情页

- 09_商品详情信息的获取和显示
- 10_用户历史浏览记录的添加
- 12_获取同一SPU的其他规格的商品信息
4-9 天天生鲜列表页

- 13_商品列表页内容的获取和显示
- 02_列表页页码控制
4-10 天天生鲜商品搜索

- 03_商品搜索_全文检索概念
- 04_商品搜索_全文检索框架和引擎的安装和配置
- 05_商品搜索_生成索引文件
- 06_商品搜索_全文检索的使用
- 07_商品搜索_更改分词方式
- 08_商品搜索_小结
4-11 天天生鲜购物车记录添加

- 09_商品详情页js代码
- 10_购物车记录添加后台view
- 11_购物车记录添加前端js
- 12_购物车记录添加_小结
- 13_购物车页面显示
4-12 天天生鲜购物车记录更新

- 02_购物车js_全选_全不选_商品的选中和不选中
- 03_购物车记录更新_后台view
- 04_购物车记录更新_前端数目增加js
- 05_购物车记录更新_前端数目减少_手动输入js
- 06_购物车记录删除_后台view
- 07_购物车记录删除_前端js
- 08_购物车模块_小结
4-13 天天生鲜订单生成

- 09_提交订单页面显示
- 10_创建订单前端js
- 11_创建订单后台view
- 02_订单生成_mysql事务概念
- 03_订单生成_django中使用事务
4-14 天天生鲜订单并发处理

- 04_订单生成_订单并发问题
- 05_订单并发_悲观锁
- 06_订单并发_乐观锁
- 07_订单并发_总结
4-15 天天生鲜订单支付、评论

- 08_用户中心-订单页面
- 09_订单支付_支付宝简介
- 10_订单支付_网站对接支付宝流程图
- 11_订单支付_订单支付代码
- 02_订单支付_获取支付结果
4-16 天天生鲜部署

- 03_订单评论代码走读
- 04_部署_uwsgi作为web服务器
- 05_部署_基本部署架构解析
- 06_部署_nginx转交请求给uwsgi
- 07_部署_nginx配置处理静态文件
- 08_部署_nginx转交请求给其他地址
- 09_部署_nginx配置upstream实现负载均衡
- 10_部署_小结
4-17 天天生鲜项目总结

- 11_天天生鲜项目_总结
第五章 flask框架v3.1

5-1 flask安装配置

- 01_回顾http通讯
- 02_认识flask
- 03_虚拟环境工具说明
- 04_第一个flask程序
5-2 app对象的初始化和配置

- 01_flask应用对象初始化参数说明
- 02_静态文件目录与路由说明
- 03_flask的配置参数设置
- 04_读取配置参数的方式
- 05_app的run使用说明
5-3 视图函数的路由

- 06_视图函数的路由规则设置说明
- 07_路由提取参数与自定义路由转换器
- 08_路由转换器的进阶使用
5-4 request对象

- 09_request的form_data_args用法
- 10_上传文件
- 11_with使用
5-5 abort函数、自定义错误、 视图函数的返回值

- 12_abort函数的使用
- 13_自定义错误处理方法
- 14_设置响应信息的方法
- 15_返回json数据的方法
5-6 cookie和session

- 16_cookie的使用
- 17_postman的安装
- 18_session机制说明
5-7 flask上下文和请求钩子

- 19_flask的上下文对象
- 20_请求钩子
- 21_请求钩子的补充说明
- 22_flask_script脚本扩展的使用
5-8 模板

- 01_模板与自定义过滤器
- 02_引入表单扩展
- 03_创建表单模型类与模板使用
- 04_使用表单接受并检验参数
- 05_关于表单的补充说明
- 06_模板宏的使用
- 07_宏定义在外部的使用
- 08_模板的闪现使用
5-9 数据库扩展包flask-sqlalchemy

- 01_使用sqlalchemy的配置
- 02_创建模型类
- 03_创建数据库表
- 04_保存数据
- 05_sqlalchemy数据库查询
- 06_关联查询与自定义显示信息
- 07_数据的修改与删除
5-10 图书案例

- 08_图书作者小案例
- 09_图书作者小案例2
5-11 数据库迁移扩展包Flask-Migrate、 邮件扩展包Flask-Mail

- 10_数据库migrate扩展的使用简介
- 11_migrate扩展的使用
- 12_使用flask发送邮件
5-12 不使用蓝图解决模块划分问题

- 01_循环引用
- 02_使用装饰器解决模块分割问题
5-13 使用蓝图划分模块

- 03_蓝图的基本定义与使用
- 04_以目录形式定义蓝图
- 05_蓝图里模板目录的处理
5-14 单元测试

- 06_单元测试引入
- 07_assert断言的使用
- 08_实现简单的单元测试
- 09_单元测试的setUp与flask的测试模式
- 10_数据库测试
5-15 flask部署

- 11_flask部署
- 12_sqlalchemy操作mysql提示警告的问题
第六章 微信公众号v3.1

6-1 开发配置和微信服务器接入

- 01_认识微信公众号
- 02_了解微信公众号开发
- 03_微信公众号开发的配置说明
- 04_学校服务器使用说明
- 05_接入微信公众号服务器开发
6-2 公众号接收和发送消息

- 06_开发者服务器收发微信消息的流程
- 07_xmltodict工具的使用
- 08_收发微信消息数据开发
- 09_其他消息与事件消息
- 10_测试消息接口
6-3 微信网页授权

- 11_网页获取微信用户资料开发
- 12_获取微信用户资料流程说明
第七章 爱家租房项目v3.1

7-1 项目说明

- 01_项目资料说明
- 02_前后端分离的认识
- 03_前端后分离对于搜索引擎的缺点
- 04_项目业务说明
7-2 项目文件目录结构

- 05_在单一文件中构建所有依赖工具
- 06_创建工程目录1
- 07_创建工程目录2
- 08_循环导入的解决
- 09_日志功能
7-3 数据库设计

- 01_项目数据库设计
- 02_项目模型类说明
- 03_日志级别bug处理
- 04_数据库迁移处理
7-4 静态文件接口

- 03_提供静态文件的蓝图编写
- 04_csrf防护机制
- 05_在静态路由中添加生成csrf_token的cookie值
7-5 图片验证码

- 01_图片验证码的使用流程
- 02_restful风格介绍
- 03_图片验证码后端接口编写
- 04_开发流程与接口文档编写
- 05_图片验证码的前端编写
7-6 短信验证

- 06_云通讯使用介绍
- 07_云通讯发送短信工具封装
- 08_发送短信验证码后端编写
- 09_测试发送短信验证码
- 10_补充防止对同一个图片验证码进行校验的逻辑
- 11_后端补充禁止60秒重复操作的逻辑
- 12_发送短信验证码前端编写
7-7 注册

- 13_注册的后端编写
- 14_密码加密与property装饰器使用
- 15_密码作为只允许设置的逻辑编写
- 16_注册后端测试
- 17_注册前端编写
- 18_补充csrf的逻辑
- 19_作业说明
7-8 登录

- 20_登录后端逻辑编写
- 21_登录测试与前端代码
- 22_检查登录状态与退出代码
- 23_登录验证装饰器
7-9 个人信息

- 05_图片存储服务的引入
- 06_七牛上传图片的使用
- 07_保存头像后端编写
- 08_图片表单的使用说明
- 09_上传图片的前端代码
- 10_作业接口说明
7-10 城区信息

- 01_城区信息后端编写
- 02_缓存机制的介绍
- 03_为城区信息补充缓存
- 04_缓存数据同步的问题
- 05_用户模块修改用户名_获取个人资料_实名认证代码说明
- 06_城区信息前端编写与前端模板的使用
7-11 发布房源

- 03_保存房屋基本信息数据后端编写
- 04_保存房屋图片后端接口编写
- 05_保存房屋基本信息前端代码
- 06_保存房屋图片前端代码与测试
- 07_map函数的使用
7-12 celery

- 01_celery模型说明
- 02_celery的基本使用
- 03_celery的目录结构使用
- 04_celery独立的目录使用
- 05_celery接收返回值
7-13 房屋管理

- 04_房屋管理后端接口后端说明
- 05_房屋管理前端代码说明
7-14 房屋列表

- 06_房屋列表页业务分析
- 07_房屋列表后端参数判断编写
- 08_构造时间条件
- 09_房屋列表页分页补充与测试
- 10_等号参数的说明
- 11_房屋列表页缓存处理
- 12_redis的pipeline使用
- 13_房屋列表页前端代码
7-15 订单

- 02_订单模块后端代码讲解
- 03_订单模块前端代码讲解
7-16 订单支付

- 04_支付宝接入流程
- 05_支付宝手机网站支付流程
- 06_支付宝秘钥说明与sdk工具使用
- 07_支付宝支付的后端接口编写
- 08_支付宝支付测试
- 09_获取支付宝支付结果修改订单数据
7-17 项目优化

- 10_csrf_token缺失bug的解决
- 11_数据库优化介绍1
- 12_数据库优化介绍2
- 13_工作账号介绍
阶段五 爬虫开发
展开第一章 通用爬虫模块使用V3.1

1-1 爬虫基本概念

- 爬虫课程的介绍和概念
- 爬虫的流程
- markdown介绍
- 搜索引擎的工作原理及robots协议
- http和http的概念
- 浏览器发送请求的流程
- URL格式和http请求格式
- day01-08字符换知识点的复习
1-2 爬虫requests库

- day01-09requests模块发送请求和获取网页的字符串
- day01-10requests保存图片
- day02-03requests模块发送带headers的请求和带参数的请求
- day02-04贴吧爬虫
- day02-05requests模块发送post请求
- day02-06requests模块使用代理
- day02-07requests模拟登陆的三种方式
1-3 chrome分析post与json

- day03-02寻找post的地址
- day03-03寻找js和分析js
- day03-04requests的小技巧
1-4 爬虫数据-json数据处理

- day03-05数据的分类
- day03-06json模块的学习01
- day03-07json模块的学习02
- day03-08 36kr的练习
- day04-02豆瓣爬虫练习
1-5 爬虫数据-正则处理数据

- day04-03正则和原始字符串r
- day04-04内涵段子爬虫
1-6 爬虫数据-xpath处理数据

- day04-05xml的了解
- day04-06xpath的学习01
- day04-07xpath模块的学习02
- day04-08lxml模块的学习
1-7 通用爬虫案例

- day05-02贴吧爬虫01
- day05-02贴吧爬虫02
- day05-03糗百爬虫01
- day05-04糗百爬虫02
- day05-05爬虫思路总结
- day05-06csv和作业
- day05-07多线程爬虫的实现
1-8 爬取动态html数据

- day06-01分析
- day06-02后续代码的建议和动态hemlt的介绍
- day06-03selenium的入门使用
1-9 豆瓣登录案例

- day06-04豆瓣登录
- day06-05打码平台的使用
- day06-07验证码识别总结
- day06-08元素定位的方法和iframe的切换和selenium使用的注意点
1-10 斗鱼爬虫

- day06-09driver的安装
- day06-10斗鱼爬虫
- day06-11tesseract的使用
第二章 MongoDB数据库V3.1

2-1 MongoDB安装配置及基本操作

- day07-02mongodb的介绍
- day07-03mongodb的安装和启动
- day07-04mongodb的增删改查
- day07-05mongodb的高级查询
- day07-06mongodb的备份恢复
- day07-08mongodb的聚合命令
2-2 MongoDB高级操作及案例

- day08-02sort skip limit的方法
- day08-03 unwind的使用
- day08-04索引的建立
- day08-05mongodb豆瓣练习
- day08-06mongdb的豆瓣练习02
- day08-07pymongo的操作
第三章 爬虫scrapy框架及案例V3.1

3-1 scrapy框架介绍

- day08-09scrapy的介绍
- day08-10scrapy的流程
- day08-11sacrapy的入门使用
3-2 scrapy-pipline、item、shell

- day09-02pipeline的介绍
- day09-03logging模块的使用
- day09-04构造请求和腾讯爬虫
- day09-05item的介绍和使用
- day09-06阳光政务平台爬虫
- day09-07debug信息的认识
- day09-08scrapy shell的使用
- day09-09scrapy ettings和管道的深入
3-3 苏宁图书案例

- day10-02苏宁图书爬虫01
- day10-03苏宁图书爬虫02
3-4 scrapy-crawlspider

- day10-04crawlspider爬虫案例
- day10-05crawlspdier爬虫介绍
3-5 scrapy-downloadmiddleware

- day10-06下载中间件的学习
- day10-07携带cookie登录
- day10-08发送post请求登录
- day10-0912306介绍和总结
3-6 百度贴吧-crawlspider版本

- day11-02贴吧爬虫和crawlspider爬虫
3-7 scrapy-分布式

- day11-03scrapyredis的介绍
- day11-04 redis复习
- day11-05domz程序介绍
- day11-06scrapy_redis的源码介绍
- day11-07 jd爬虫
3-8 分布式爬虫案例

- day12-02当当爬虫01
- day12-02当当爬虫02
- day12-03当当爬虫运行演示
- day12-04亚马逊爬虫
- day12-05亚马逊爬虫02
- day12-05亚马逊爬虫03
- day12-06pycharm发布代码
- day12-07crontab的使用
阶段六 人工智能
展开第一章 数据分析v3.1

1-1 数据分析介绍和环境安装

- day01-01数据分析的介绍
- day01-02jupyter和conda的使用
1-2 matplotlib折线图

- day01-03matplotlib的基础绘图01
- day01-04matplotlib的基础绘图和调整x轴的刻度
- day01-05matplotlib的绘制10点到12点的气温
- day01-06matplotlib设置显示中文
- day01-07matplotlib的设置图形信息
- day01-08matplotlib绘制多次图形和不同图形的差异介绍和总结
1-3 matplotlib常用统计图

- day02-02绘制散点图
- day02-03绘制条形图
- day02-04绘制多次条形图
- day02-05绘制直方图
- day02-06更多的绘图工具的了解
1-4 numpy数组

- day02-07numpy的数组的创建
- day03-02数组的计算和数组的计算
1-5 numpy读取本地数据和索引

- day03-03numpy读取本地数据
- day03-04numpy中的索引和切片
- day03-05numpy中更多的索引方式
1-6 numpy中的nan和常用方法

- day03-06numpy中的nan和常用统计方法
- day03-07numpy中填充nan和youtube数据的练习
- day04-02数据的拼接
- day04-03numpy中的随机方法
1-7 series和读取外部数据

- day04-04pandas的series的了解
- day04-05pandas读取外部数据
1-8 dataframe

- day05-06pandas的dataFrame的创建
- day05-07Dataframe的描述信息
- day05-08dataFrame的索引
- day05-09bool索引和缺失数据的处理
1-9 统计方法和字符串离散化

- day05-10padas的常用统计方法
- day05-02电影数直方图
1-10 数据的合并和分组聚合

- day05-03字符串离散化的案例
- day05-04数据合并
- day05-05数据分组聚合
- da05-06数据分组聚合02
- day05-07数据的索引学习
- day05-08数据分组聚合练习和总结
1-11 时间序列

- day06-02pandas时间序列01
- day06-03pandas时间序列02
1-12 pandas案例

- day06-04 911案例
- day06-05 PM2.5案例
- day06-06 PM2.5案例02
- day06-08 豆瓣电视的案例
第二章 机器学习v3.1

2-1 机器学习介绍

- 01_机器学习简介
- 02_机器学习概述
2-2 特征工程和文本特征提取

- 03_数据集的组成
- 04_特征工程的定义
- 05_字典特征数据抽取
- 06_文本特征抽取以及中文问题
- 07_tf-df分析问题
2-3 数据特征预处理

- 08_特征预处理-归一化
- 09_归一化以及标准化对比
- 10_标准化总结以及缺失值处理
- 11_标准化总结以及缺失值处理
2-4 数据降维

- 12_数据的降维之特征选择
- 13_降维案例1
- 14_降维案例2
2-5 机器学习概述

- 15_机器学习算法分类以及开发流程
- 01_第一天复习
- 02_数据的划分和介绍
- 03_转换器与估计器
2-6 k-近邻算法

- 04_k-近邻算法以及案例预测入住位置
- 05_K-近邻算法案例
- 06_k-近邻算法总结
2-7 朴素贝叶斯算法

- 07_朴素贝叶斯算法原理
- 08_朴素贝叶斯算法对新闻进行分类案例
- 09_朴素贝叶斯算法总结
- 10_精确率和召回率
- 11_交叉验证与网格搜索对K-近邻算法调优
2-8 决策树和随机森林

- 12_决策树之信息论基础
- 13_决策树的划分以及案例
- 14_决策树的保存结果分析
- 15_随机森林的原理以及案例调优
2-9 线性回归

- day02_16_每日总结
- 01_第二天知识回顾
- 02_线性回归的定义以及矩阵的运算
- 03_线性回归策略,优化,案例
- 04_线性回归两种求解方式总结
- 05_过拟合以及欠拟合
- 06_Ridge岭回归分析
2-10 逻辑回归

- 07_模型的保存与加载
- 08_逻辑回归定义,损失函数,优化与线性回归比较
- 09_逻辑回归预测癌症案例
- 10_逻辑回归总结
- 11_京东金融数据集介绍
2-11 k-means

- 12_k-means原理以及案例
第三章 深度学习v3.1

3-1 TensorFlow介绍

- 01_tensorflow基本介绍
3-2 图和会话

- 02_tensorflow图的结构
- 03_图
- 04_会话
- 05_会话的run方法
3-3 张量和基本运算

- 06_张量的定义以及数据
- 07_运算API介绍
3-4 变量和模型保存加载

- 08_可视化学习
- 09_线性回归的原理复习以及实现
- 10_trainable,学习率的调整,梯度爆炸
- 11_增加损失值等变量显示
- 12_模型的保存与加载
- 13_自定义命令行参数
3-5 数据读取

- 02_tensorflow解决读取数据、实现同步模拟
- 03_队列管理器和协程协调器实现异步读取训练
- 04_文件读取流程
- 05_CSV文件读取案例
3-6 文件读取分析存储

- 06_图像基本知识分析
- 07_图片文件读取
- 08_二进制文件读取分析
- 09_二进制文件读取
- 10_tfrecords文件的读取与存储
3-7 简单神经网络

- 01_感知机模型
- 02_神经网络结构
- 03_简单的神经网络实现手写数字图片识别
- 04_简单的单层神经网络预测手写数字图片
3-8 卷积神经网络

- 05_卷积神经网络介绍以及卷积层结构
- 06_激活层与池化层
- 07_面试题分析
- 08_卷积神经网络识别手写数字
3-9 验证码识别

- 01_第六天复习
- 02_验证码识别原理分析
- 03_验证码识别程序流程以及图片数据的处理
- 04_验证码识别的实现
3-10 分布式系统和线性回归

- 05_分布式的原理,架构,更新参数模式
- 06_自实现一个线性回归
第四章 数据结构和算法

4-1 数据结构和算法基础

- 01-算法引入
- 01-时间复杂度与大O表示法
- 02-最坏时间复杂度与计算规则
- 03-常见时间复杂度与大小关系
- 01-代码执行时间测量模块timeit
- 02-Python列表类型不同操作的时间效率
- 03-Python列表与字典操作的时间复杂度
- 01-数据结构引入
4-2 顺序表

- 01-内存、类型本质、连续存储
- 02-基本顺序表与元素外围顺序表
- 03-顺序表的一体式结构与分离式结构
- 04-顺序表数据区替换与扩充
- 01-顺序表添加与删除元素_Python列表的实现
4-3 链表

- 01-链表的提出
- 02-单链表的ADT模型
- 03-Python中变量标识的本质
- 04-单链表及结点的定义代码
- 05-单链表的判空、长度、遍历与尾部添加结点的代码实现
- 06-单链表尾部添加和在指定位置添加
- 07-单链表查找和删除元素
- 08-单链表与顺序表的对比
- 01-双向链表及添加元素
- 02-双向链表删除元素
- 01-单向循环链表遍历和求长度
- 02-单向循环链表添加元素
- 03-单向循环链表删除元素
- 04-单向循环链表删除元素复习及链表扩展
4-4 栈与队列

- 01-栈与队列的概念
- 01-栈的实现
- 01-队列与双端队列的实现
4-5 排序与搜索

- 01-排序算法的稳定性
- 01-冒泡排序及实现
- 01-选择排序算法及实现
- 01-插入算法
- 02-插入排序1
- 03-插入排序2
- 01-希尔排序
- 02-希尔排序实现
- 01-快速排序
- 02-快速排序实现1
- 03-快速排序实现2
- 01-归并排序
- 02-归并排序_代码执行流程
- 03-归并排序时间复杂度及排序算法复杂度对比
- 01-二分查找
- 02-二分查找时间复杂度
4-6 树与树算法

- 01-树的概念
- 02-二叉树的概念
- 01-二叉树的广度优先遍历
- 02-二叉树的实现
- 03-二叉树的先序、中序、后序遍历
- 04-二叉树由遍历确定一棵树