如果AI替你写代码,为什么还要用Python?
Published: 2026-05-12 Reading: 5 min AI / 编程语言
Hacker News 上一篇 205 分、222 条评论的热帖重新点燃了一个根本性的争论:如果AI写了你大部分代码,语言选择还重要吗?共识正在转向——Python的霸主地位不再稳如磐石。
核心论点其实很简单。Python之所以成为全球最流行的编程语言,是因为它对人类来说好写。但如果AI代理写了95%的代码,人类的编程体验就变成了次要因素。真正重要的是这门语言对AI来说好不好用——而这完全改变了天平的倾斜方向。
2万美元的实证:16个Claude代理用Rust写了一个C编译器
最震撼的证据来自 Anthropic 的 Nicholas Carlini。他让 16 个 Claude 代理并行协作,用 Rust 写了一个 C 编译器——10 万行代码,能在 x86、ARM、RISC-V 架构上启动 Linux 6.9,还能编译 QEMU、FFmpeg、SQLite 这些真正的大型项目。总成本?大约 2 万美元的 API 调用费用。
这不是玩具项目。C 编译器是人类能写出的最复杂的软件之一——你需要深入理解语言规范、寄存器分配、指令选择、平台特定的调用约定。AI 代理能用 Rust(而不是 Python)写出一个可用的 C 编译器,这件事本身就很说明问题。
Rust 的类型系统为什么是 AI 的超能力
Rust 对人类来说以"难"著称。借用检查器跟你对着干,生命周期让人头大,编译器拒绝那些看起来正确的代码。但反转来了:让 Rust 对人类困难的一切,恰恰让它对 AI 来说变得容易。
编译器反馈循环是关键。Rust 编译失败时,错误信息异常精准——它会告诉你哪里出了错、为什么出错,甚至经常给出修复建议。对一个需要反复迭代代码的 AI 代理来说,这简直是梦中情编译器。
Python 则相反——它是一个脚本语言,OOP 是后来嫁接上去的。组织代码、传递参数、构建数据结构有无数种方式。正如一位 HN 评论者所说:"Python 太灵活了,灵活到 LLM 生成的新项目代码很快就变成了'写一次、再也没人能读'的代码。"对人类来说是友好的灵活性,对 AI 来说反而成了负担。
TypeScript 7.0:10倍性能的重写说明了什么
TypeScript 团队决定把 TypeScript 编译器从 TypeScript 重写到 Go——性能直接提升 10 倍。当工具链本身都受益于强类型编译语言时,整个生态都在转向。更快的类型检查意味着更快的 AI 反馈循环,意味着 AI 代理能在更大的代码库上更快速地迭代。
Go 的简洁性和极快的编译速度让它成为 AI 工作流的理想选择。多位 HN 评论者现身说法:"Go 几乎瞬间编译完成,同时具备编译语言的所有优势。用 Python 时 LLM 总是猜错参数格式,换成 Go 后,语言本身的摩擦力反而逼着 LLM 产出更靠谱、更可读的代码。"
Python 还有哪些牌可以打
HN 的讨论并非一边倒。几个有力的反驳值得注意:
训练数据量。Python 有海量的训练数据——更多的例子、更多的 Stack Overflow 答案、更多的 GitHub 仓库。一位评论者说得直白:"我可以用 AI 写 Brainfuck,但效果肯定不如 Python。"
人类可读性依然重要。如果你打算和 AI 一起写代码、调试、维护,语言还得让人能读懂。Python 在这方面依然无敌。
胶水语言的角色。Python 在数据科学、脚本编写、快速原型方面的统治地位不会消失。notebook、数据管道、一次性脚本,Python 的表达力依然无可替代。
真正的转变:AI 是伟大的均衡器
讨论中最有深度的观点是:AI 不会杀死 Python,它只是拉平了竞争环境。以前选 Rust 而不是 Python 意味着承受巨大的生产力税——你要学所有权、生命周期、跟借用检查器搏斗好几天。
现在,AI 吸收了这些成本。编译器依然抓错误,但 AI 来修。所有权模型依然保证安全,但 AI 第一二次就写对了。结果就是:你获得了 Rust 的安全性和性能优势,却不用付出人类学习的代价。
这不意味着所有人都该明天就转 Rust。它意味着默认选 Python 的那些理由——好写、迭代快、学习曲线平缓——在 AI 做重活的世界里不再那么站得住脚了。新的默认应该是:选运行时特性最好、安全保证最强、AI 反馈循环最优的语言。
给你的下一个项目的建议
- 新项目——认真考虑 Go 或 Rust。AI 会写大部分代码,类型系统会抓住 Python 会漏到生产的错误。
- 现有 Python 项目——别重写。但加新组件时,评估一下强类型语言是否更合适,尤其是性能关键路径。
- AI 密集型工作流——在 Python 和强类型语言上都测试你的 AI 代理。你可能会惊讶于它在更强约束下的表现。
- 学习路径——Python 仍然是最好的入门语言。但你的第二语言应该是 Go 或 Rust,而不是另一种脚本语言。
"默认用 Python"的时代正在结束——不是因为 Python 不好,而是因为让它成为默认选项的那些假设在 AI 优先的世界里不再成立了。当机器写代码时,机器的偏好就变得重要了。而机器偏爱类型。