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  
相关推荐
夕除几秒前
redis--013
java·开发语言
object not found1 分钟前
Nuxt4去掉body中默认的边距
开发语言·后端·rust
2601_962296282 分钟前
python初学者怎么选IDE
ide·python·开发环境·初学者·工具选择
Java后端的Ai之路10 分钟前
Git pull弹出vim编辑器完整排查指南
开发语言·人工智能·git·编辑器·vim
青少儿编程课堂2 小时前
威佐夫博弈(双堆取子游戏)解析
c++·python·算法·bfs·信息学竞赛
hhzz2 小时前
【OpenCV 入门到精通 03】图像入门:读取、显示、保存完全指南
人工智能·python·opencv·计算机视觉
金融小师妹3 小时前
AI趋势识别:黄仁勋宣布“AGI时代”到来,Astra能力跃迁背后的AI安全边界
大数据·python·深度学习·重构·逻辑回归
2501_941875286 小时前
从配置中心到动态管理的互联网工程语法演进与多语言实践分享
开发语言·python
hfywmsj6 小时前
广州餐饮铺位招租决策模型:多因子选址系统设计
开发语言·人工智能·python·广州餐饮铺位招租
努力的lpp8 小时前
php反序列化一(大白话版)
开发语言·web安全·php·ctf·反序列化