python生成器和列表生成器的区别
如下,是在实际开发中遇到的一个问题。
因此:
1. 能用列表生成式就不用圆括号的生成式
2. 用filter的时候,尽量加个list转一下
# 生成器表达式中, in 子句在声明时执行, 而条件子句则是在运行时执行。 array = [1, 3, 5] # 1,3,5 g1 = [x for x in array if array.count(x) > 0] # 1,3,5 g2 = {x for x in array if array.count(x) > 0} # 5 g3 = (x for x in array if array.count(x) > 0) # 1,3,5 # g3 = (x for x in array) # 1,3,5 _g3 = list((x for x in array if array.count(x) > 0)) # 5 g4 = filter(lambda x: array.count(x) > 0, array) # 1,3,5 g5 = list(filter(lambda x: array.count(x) > 0, array)) array = [5, 7, 9] print(list(g1), list(g2), list(g3), list(_g3), list(g4), g5)
分类:
python
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)