python 记录

Python 中的生成器表达式

基本语法结构
python 复制代码
(表达式 for 循环变量 in 可迭代对象 if 条件判断)

if 条件判断可选

举例
生成器表达式写法(代码中的简洁写法)
python 复制代码
left_count = sum(1 for i in range(lo, hi + 1) if nums[i] == left)
普通 for 循环写法(等价,更易理解)
python 复制代码
left_count = 0  # 初始化计数器
for i in range(lo, hi + 1):  # 遍历区间索引
    if nums[i] == left:  # 条件判断
        left_count += 1  # 满足条件则计数器+1

匿名函数(lambda 表达式)

python 复制代码
lambda 参数列表: 表达式

表达式计算的结果就是返回值

举例
匿名函数写法
python 复制代码
# 嵌套生成器表达式 + sum()
count_odd = lambda nums: sum(1 for i in nums if i % 2 != 0)
print(count_odd([1,2,3,4,5]))  # 返回 3(奇数的个数)
等价写法
python 复制代码
# 等价的普通函数
def count_odd_numbers(nums):
    odd_count = 0
    for i in nums:
        if i % 2 != 0:
            odd_count += 1  
    return odd_count  
相关推荐
Hgfdsaqwr11 分钟前
掌握Python魔法方法(Magic Methods)
jvm·数据库·python
weixin_3954489115 分钟前
export_onnx.py_0130
pytorch·python·深度学习
m0_7482331720 分钟前
30秒掌握C++核心精髓
开发语言·c++
s1hiyu20 分钟前
使用Scrapy框架构建分布式爬虫
jvm·数据库·python
2301_7634724626 分钟前
使用Seaborn绘制统计图形:更美更简单
jvm·数据库·python
Fleshy数模35 分钟前
从数据获取到突破限制:Python爬虫进阶实战全攻略
java·开发语言
无垠的广袤43 分钟前
【VisionFive 2 Lite 单板计算机】边缘AI视觉应用部署:缺陷检测
linux·人工智能·python·opencv·开发板
Duang007_44 分钟前
【LeetCodeHot100 超详细Agent启发版本】字母异位词分组 (Group Anagrams)
开发语言·javascript·人工智能·python
froginwe111 小时前
Redis 管道技术
开发语言
u0109272711 小时前
C++中的RAII技术深入
开发语言·c++·算法