Python 进阶
列表推导式
一行代码就能创建和转换列表。
- 掌握列表推导式语法
- 使用带条件的推导式
- 理解推导式的可读性边界
为什么需要推导式
传统方式创建平方列表要写4行代码,用列表推导式1行就搞定。
示例代码(可运行)
Python 0%
带条件的推导式
示例代码(可运行)
Python 0%
💡推导式口诀
结果 for 变量 in 可迭代 if 条件。读起来像英语:give me x² for x in numbers if x is even。
字典和集合推导式
示例代码(可运行)
Python 0%
预测输出
print([x*2 for x in range(4)])找 Bugif-else 在推导式里得放 for 前面,if 筛选得放 for 后面。
nums = [1,2,3]
result = [x * 2 for x in nums if x > 1 else 0]
填空题填写空白处的代码
evens = [x x in range(10) x % 2 == 0]
选择题
{i: i**2 for i in range(3)} 的结果?
资深工程师加餐
底层原理 · 大厂视角 · 工程经验,点卡片展开
内层函数(或 lambda)捕获的是外层变量本身,而不是定义那一刻的值;循环里定义的多个函数,循环结束后调用往往都拿到最后的值。解决办法是用默认参数 f(x=x) 立即绑定,或用工厂函数包一层。配合 LEGB 作用域顺序(局部→外层→全局→内建)理解,90% 的作用域谜题都能解开。
挑战任务
推导式挑战
简单+50 XP
就用列表推导式,找1到50里能被3整除的数的平方。
推导式挑战
Python 0%
2 个测试用例
课后作业
词频统计
中等+20 XP
就这么简单。用字典推导式统计字符串里每个字符出现的次数。
词频统计
Python 0%
1 个测试用例