课程试听
第一章 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-敌机撞毁英雄
第五章 网络编程v3.1

5-1 基本概念

- 01-网络通信概述
- 02-IP地址
- 03-Linux、windows查看网卡信息
- 04-ip地址的分类-ipv4和ipv6介绍
- 05-(重点)端口
- 06-端口分类:知名端口、动态端口
- 07-socket介绍
5-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聊天器
5-3 tcp客户端

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

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

- 06-案例:下载文件
- 07-知识点快速总结,listen里的参数
- 08-QQ不绑定端口、昨日知识点复习