Grace's Dev Site
write关于我
闭坑指南 · Python#性能 #内存

列表推导与性能错觉

语法糖不等于零成本;重复计算与巨大中间列表会拖慢程序。

列表推导与性能错觉

推导式不是魔法

[f(x) for x in items] 和 for 循环往往速度接近。真正影响性能的是:

  • f(x) 是否昂贵、是否重复计算
  • 是否构建了不需要的巨大列表

生成器表达式

(x for x in ...) 按需计算,适合管道式处理、只遍历一次的数据。

常见误区

  • 在推导里调用 I/O 或打印(难调试、副作用隐蔽)
  • 嵌套多层推导可读性差,不如普通循环
  • list 存千万对象却不释放引用

profiling 优先

timeit / cProfile 找热点,再优化;不要凭感觉换写法。

在线运行 Python

Pyodide