写 for 循环时顺手,一遇到 while 里套 if、if 里再套 for 就开始犹豫:这个 else 到底跟谁配对?循环跑完了为什么 break 没生效?这不是基础没学好,是流程控制这块的边界情况没被单独拎出来练过。这门课盯的就是这些地方。

先自查:这四种情况你卡在哪一种

  • if / elif / elif / else 的条件顺序写反,逻辑对但结果不对,靠打印调试才发现。
  • for 循环里带 else 分支,记住语法却不清楚它什么时候执行、什么时候被 break 跳过。
  • while 循环的终止条件靠"感觉"写,要么死循环,要么提前退出漏掉一轮数据。
  • break 和 continue 混用后,循环变量和累加结果对不上,重跑一遍还是同样的数。

以上四条能对上任意一条,说明缺的不是语法记忆,而是对执行顺序的手感。课程内容按"条件判断 → 循环结构 → 循环嵌套 → 跳出与跳过 → 循环中的 else"这条线推进,把每一处判断边界单独拉出来验证,而不是只给一段标准写法让你抄。

配套练习在练什么

流程控制的知识点很少,但组合起来的写法很多。这门课的练习重点不在写多少行代码,而在结果是否符合预期:

  • 给定一组分支条件,要求按执行顺序逐条说出哪一步会被命中,再跑代码验证,让判断先于运行。
  • 把同一段逻辑分别用 for 和 while 改写,比较两种写法在退出条件上的差异。
  • 构造会触发 break 和不会触发 break 的两组输入,观察循环 else 的走向,把这块容易记混的规则固定下来。
  • 嵌套循环里在内层跳出,检查外层是否按预期继续,理解 break 只作用于最近一层。

练完这些,你会养成一个习惯:写循环之前先明确"什么时候停、停了之后做什么",而不是写到一半再补条件。

看完应该能回答的问题

  • if 的多个分支中,条件存在重叠时,哪一条会生效?
  • for 后面跟的 else,在循环被 break 中断时还会执行吗?
  • while True 加上内部 break,和把条件写进 while 括号里,各自的适用场合是什么?
  • 嵌套循环里,改动外层循环变量会不会影响内层已经开始的这一轮?
  • continue 执行之后,本轮循环剩下的语句还会不会跑?

这些问题答得上来,说明流程控制已经不是靠记忆在写,而是能预判代码的走向。

适合什么时候来看

已经能写简单的 Python 脚本,但在处理多条件判断、数据批量遍历、循环里带提前退出这类场景时仍然会绕弯的人,适合把这门课当作一次针对性补漏。它不铺开讲 Python 全貌,只把流程控制这一层讲透,学完再回去看自己之前写的循环,大概率能一眼看出哪几处是可以简化或本来就写错的。

如果你连变量、基本数据类型、函数定义都还没动手写过,建议先把这些过一遍再来,否则练习里的验证环节会变成单纯的抄写。

python2024课程-Python基础-流程控制

课程详情

课程标题:Python2024课程 - Python基础-流程控制

适合人群:有Python基础的学习者

学习收获:

  • 开发速度快:Python简洁的语法、动态的类型、无需编译、丰富的库支持等特性,使得Python往往只需几十行代码即可开发出需要几百行C代码的功能。
  • 交互式语言:可在终端提示符 >>> 后直接输入并执行代码。
  • 可扩展可嵌入:基础代码库覆盖了正则表达式、网络、多线程、GUI、正则表达式、网络编程、数据库等领域。除了内置的库外,Python还有大量的第三方库可直接使用,例如在web领域、数据分析领域等,Django、TruboGears、Pylons等框架可辅助快速开发。
  • 初学者语言:支持广泛的应用程序开发,包括文字处理到浏览器架构、游戏等。

课程目录

01 Python基础-函数的意义
  01 p3.8.1.1回顾.mp4
  02 p3.8.1.2算学费.mp4
  03 p3.8.1.3输入数据求zuida.mp4
  04 p3.8.1.4精确划分思维解决zuida次大.mp4
  05 p3.8.1.5交换数据.mp4
  06 p3.8.1.6实现按行显示.mp4
  07 p3.8.1.7围棋棋盘绘制.mp4
  08 p3.8.1.8国际象棋绘制.mp4
  09 p3.8.1.9为什么要用函数.mp4
  10 p3.8.1.10函数的四种类型.mp4
  11 p3.8.1.11函数的一般形式.mp4
  12 p3.8.1.12必须用函数的理由-哥德巴赫.mp4
  13 p3.8.1.13函数的本质就是地址.mp4
  14 p3.8.1.14函数变量意义.mp4
  15 p3.8.1.15函数变量用途.mp4
  16 p3.8.1.16装饰器设计模式包含模式.mp4
  17 p3.8.1.17函数概念.mp4
  18 p3.8.1.18None函数.mp4
  19 p3.8.1.19默认参数与返回值作为参数.mp4
  20 p3.8.1.20名称参数与位置参数.mp4
  21 p3.8.1.21参数副本机制.mp4
  22 p3.8.1.22副本练习.mp4
  23 p3.8.1.23多个返回值.mp4
  24 p3.8.1.24全局变量与局部变量.mp4
  25 p3.8.1.25函数内部引用全局变量.mp4
  26 p3.8.1.26函数可以嵌套.mp4
  27 p3.8.1.27.1函数nonlocal.mp4
  28 p3.8.1.27.nolocal处理函数嵌套变量.mp4
  29 p3.8.1.28nonlocal.mp4
  30 p3.8.1.29总结.mp4
  31 p3.8.1.30开房数据查询.mp4
02 Python基础-生成器
  01 p3.8.2.1回顾.mp4
  02 p3.8.2.2set初始化风格.mp4
  03 p3.8.2.3set增加与quchong.mp4
  04 p3.8.2.4set删除元素.mp4
  05 p3.8.2.5遍历set.mp4
  06 p3.8.2.6类型转化.mp4
  07 p3.8.2.9set常见运算符.mp4
  08 p3.8.2.10set关系运算符判断包含.mp4
  09 p3.8.2.11set集合判断.mp4
  10 p3.8.2.12frozenset.mp4
  11 p3.8.2.13字典的基本定义循环.mp4
  12 p3.8.2.14字典判断在不在实现插入与更新.mp4
  13 p3.8.2.15字典删除.mp4
  14 p3.8.2.16字典详解.mp4
  15 p3.8.2.17字典与set无法嵌套.mp4
  16 p3.8.2.18迭代器.mp4
  17 p3.8.2.19列表生成式.mp4
  18 p3.8.2.20生成器.mp4
  19 p3.8.2.21生成器节省内存用于循环.mp4
  20 p3.8.2.22生成器yield作用.mp4
  21 p3.8.2.23生成器简介.mp4
  22 p3.8.2.24测试.mp4
  23 p3.8.2.25游戏简介.mp4
  24 p3.8.2.26游戏初级修改.mp4
  25 p3.8.2.27.1语音控制游戏实现.mp4
  26 p3.8.2.27键盘模拟.mp4
  27 p3.8.2.28鼠标模拟.mp4
  28 p3.8.2.29代码规范函数简化重用.mp4
  29 p3.8.2.30列表与元组小结.mp4
  30 p3.8.2.31作业.mp4
03 Python基础-时间与单元测试
  01 p3.8.3.1时间的简单风格.mp4
  02 p3.8.3.2时间格式化.mp4
  03 p3.8.3.3抓取年月日计算时间差.mp4
  04 p3.8.3.4时间函数.mp4
  05 p3.8.3.5计算时间差.mp4
  06 p3.8.3.6date小结.mp4
  07 p3.8.3.7python2与3的差异.mp4
  08 p3.8.3.8内置函数筛选.mp4
  09 p3.8.3.9内置函数map.mp4
  10 p3.8.3.10内置的函数sorted.mp4
  11 p3.8.3.11金融数据排序.mp4
  12 p3.8.3.12新浪数据抓取实时.mp4
  13 p3.8.3.13文档测试.mp4
  14 p3.8.3.14单元测试函数.mp4
  15 p3.8.3.15单元测试一个类.mp4
04 Python基础-语音对话
  01 p3.8.4.1昨日重现.mp4
  02 p3.8.4.2list的内存结构.mp4
  03 p3.8.4.3list每个元素都有内存地址.mp4
  04 p3.8.4.4list索引.mp4
  05 p3.8.4.5更新列表方法.mp4
  06 p3.8.4.6del强化.mp4
  07 p3.8.4.7列表运算符.mp4
  08 p3.8.4.8列表嵌套.mp4
  09 p3.8.4.9列表常见方法.mp4
  10 p3.8.4.11列表常见的函数.mp4
  11 p3.8.4.12深浅复制.mp4
  12 p3.8.4.13元组的定义.mp4
  13 p3.8.4.14元祖的内存结构.mp4
  14 p3.8.4.15元组操作.mp4
  15 p3.8.4.16元组一般操作.mp4
  16 p3.8.4.17语音识别框架测试.mp4
  17 p3.8.4.18语音对话.mp4
  18 p3.8.4.19语音对话.mp4
  19 p3.8.4.20语音翻译.mp4
  20 p3.8.4.21语音控制QQ.mp4
05 Python基础-循环嵌套
  01 p3.8.5.1while与whileelse编程风格.mp4
  02 p3.8.5.2循环控制图形绘制.mp4
  03 p3.8.5.3while猜数字.mp4
  04 p3.8.5.4输入输出重定向.mp4
  05 p3.8.5.5while习题分析.mp4
  06 p3.8.5.6可以退出的命令系统.mp4
  07 p3.8.5.7for初步简介.mp4
  08 p3.8.5.8跑分.mp4
  09 p3.8.5.9流程结合.mp4
  10 p3.8.5.10for循环.mp4
  11 p3.8.5.11forfor嵌套.mp4
  12 p3.8.5.12forfor分析.mp4
  13 p3.8.5.13break中断循环.mp4
  14 p3.8.5.14contiune结束本次循环.mp4
  15 p3.8.5.15双层循环的break与continue分析.mp4
  16 p3.8.5.16break与contiue小结.mp4
  17 p3.8.5.17一闪一闪亮晶晶.mp4
  18 p3.8.5.18循环控制大小与位置.mp4
  19 p3.8.5.19对角线.mp4
  20 p3.8.5.20绘制圆形.mp4
  21 p3.8.5.21口顺时针运动.mp4
  22 p3.8.5.22循环等价.mp4
  23 p3.8.5.23作业与小结.mp4
06 Python基础-异常
  01 p3.8.6.1异常与错误的概念.mp4
  02 p3.8.6.2tryexcept解决异常不出错继续执行.mp4
  03 p3.8.6.3密码工具.mp4
  04 p3.8.6.4出发数据库.mp4
  05 p3.8.6.5mysql.mp4
  06 p3.8.6.6异常else.mp4
  07 p3.8.6.7异常处理的标准公式.mp4
  08 p3.8.6.8弹出异常.mp4
  09 p3.8.6.9withas.mp4
  10 p3.8.6.10类中使用异常.mp4
  11 p3.8.6.11继承.mp4
  12 p3.8.6.12自定义异常.mp4
  13 p3.8.6.13断言.mp4
  14 p3.8.6.14密码工具设计三个独立的类.mp4
  15 p3.8.6.15密码工具2类链接3类.mp4
  16 p3.8.6.16密码工具1类链接3类.mp4
  17 p3.8.6.17密码工具分析.mp4
  18 p3.8.6.18作业.mp4