一、上期学习内容回顾

上期课程围绕 Python 循环基础两大核心模块展开学习。我们认识了 for 遍历的语法结构,掌握遍历列表、字典、字符串、range 等五种常见可迭代对象的使用方式;学习 range 的三种形式 `range(起, 止, 步)`,理解"含起不含止"的惰性序列特性。同时辨析 while 与 for 的适用场景——知道次数用 for,不知道次数用 while,理清 while 三要素(初始化、条件判断、条件更新)的完整逻辑。课程还讲解 break 与 continue 的区别:break 立即结束整个循环,continue 跳过本轮剩余进入下一轮,并强调 while + continue 时更新语句必须放在 continue 之前,防止死循环。通过实操练习巩固循环基础,为本次深入学习打下基础。

二、本次学习内容

1、本次讲解的内容

今天的讲解内容是第6章循环迭代的第5节(enumerate与zip:带索引/并行遍历)到第13节(课后作业)。其中主要包括以下内容:

1.enumerate与zip 的2个重要知识点,其中包括:

1. enumerate:同时拿索引和值,比 `range(len(lst))` 更 Pythonic

2. zip:并行遍历多个容器,以最短的容器为准

课堂练习:

2.嵌套循环的核心要点,其中包括:

1. 执行顺序:外层每走1次,内层走完一整轮
2. 总次数 = 外层 × 内层
3. 经典案例:九九乘法表

课堂练习:

3.推导式的3种类型,其中包括:

1. 列表推导式:`[表达式 for 变量 in 可迭代 if 条件]`
2. 字典推导式:`{k: v 操作 for k, v in d.items()}`
3. 集合推导式:`{表达式 for 变量 in 可迭代}`(自动去重)

课后作业:

4.while-else 与死循环防御,其中包括:

1. else 块在循环正常结束(没被break)时执行
2. 死循环三大成因:忘更新、更新方向错、条件恒真
3. 防御技巧:加最大次数保险
课堂练习:


5.循环性能优化的3个铁律,其中包括:

1. 字符串拼接用 join(O(n)),别用 +=(O(n²))
2. 成员判断用 set(O(1)),别用 list(O(n))
3. 能用内置函数(sum/max/min)就用内置

课堂练习:

6.循环常见错误排查,其中包括:

1. 结果少一个:range 含起不含止,末尾 +1
2. continue 后死循环:更新语句放 continue 之前
3. 排查三步法:

四、课后作业

作业1:

作业2:

作业3:

本次学习收获

1. enumerate和zip是必须掌握的Pythonic写法,以后遍历列表都优先用它们
2. 推导式是语法糖,但不能滥用,逻辑复杂了就老实写循环
3. while-else这个特性很有意思,找质数的例子特别优雅
4. 性能优化**很重要,尤其是字符串拼接和成员判断
5. 死循环防御要养成习惯,写while时先写更新语句

五、课程来源
翊博老师这门 Python 量化课程每日在哔哩哔哩直播授课,完整规划 25 天代码基础学习 + 20 天实战项目,零基础也能跟上节奏。大家如果想要了解这个课程可以关注翊博老师 B 站账号 yibohere,视频链接:
https://www.bilibili.com/video/BV1SpKH6bE51/?share_source=copy_web&vd_source=19058ca9a8071c4fcc7ab3b8aadcf7d1

#Yibo翊博#yibohere#Yibo Python#Datawhale
 

Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐