暑期Python实战营——7月24日学习笔记
一、上期学习内容回顾
上期课程围绕 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
更多推荐



所有评论(0)