前阵子跟几个做后端的朋友吃饭,聊到一个挺有意思的话题:如果以后大部分代码都是 AI 写的,那我们还需要学编程吗?有人半开玩笑地说,那以后就只剩“会提问的人”和“不会提问的人”了。我当时没接话,但心里其实有个更具体的判断——AI 写得越多,Python 反而越像一门人人都得会一点的语言。
这个结论乍一听有点反直觉。毕竟 AI 都能写代码了,为什么还要自己学?下面我结合自己这两年的实际使用体验,聊聊为什么我越来越觉得 Python 是那个“绕不开”的选项。
一、AI 生成代码,本质上是“把需求翻译成可执行逻辑”
先说清楚一件事:AI 写代码不是凭空变出来的,它需要你把问题描述清楚。而描述问题这件事,恰恰和编程思维强相关。
举个很常见的场景。你想让 AI 帮你处理一批 Excel 文件,把每个表里“销售额”大于 1 万的记录挑出来汇总。如果你只会说“帮我处理一下表格”,AI 大概率给你一段似是而非的代码,跑起来各种报错。但如果你能说清楚“读取目录下所有 xlsx,遍历每个 sheet,筛选某列数值,最后合并输出”,效果就完全不一样。
这种“把模糊需求拆成明确步骤”的能力,其实就是编程训练出来的。而 Python 因为语法接近自然语言,是大多数人建立这种思维的第一门语言。你不需要先搞懂指针和内存管理,就能把注意力放在“逻辑怎么组织”上。
二、AI 产出的代码,最终还是要有人能看懂、能改
我见过不少同事,用 AI 生成一段脚本,跑通了就扔进项目里,结果过两个月出了 bug,自己都看不懂当时那段代码在干嘛。这不是 AI 的问题,是“验收能力”缺失的问题。
AI 给的代码不一定对,也不一定适合你的场景。你得能读懂它、判断它、必要时改它。而 Python 的可读性在这里优势很明显——缩进强制、语法干净,一段 AI 生成的 Python 代码,稍微有点基础的人就能顺着读下来。
比如下面这段,是 AI 经常给出的典型数据处理代码:
import pandas as pd from pathlib import Path def summarize_sales(folder: str, threshold: float = 10000) -> pd.DataFrame: """汇总目录下所有 Excel 中销售额超过阈值的记录""" frames = [] for file in Path(folder).glob("*.xlsx"): df = pd.read_excel(file, sheet_name=None) for sheet_name, sheet_df in df.items(): if "销售额" not in sheet_df.columns: continue filtered = sheet_df[sheet_df["销售额"] > threshold].copy() filtered["来源文件"] = file.name filtered["工作表"] = sheet_name frames.append(filtered) if not frames: return pd.DataFrame() return pd.concat(frames, ignore_index=True) if __name__ == "__main__": result = summarize_sales("./data") print(result.head()) result.to_excel("./汇总结果.xlsx", index=False)这段代码不算复杂,但如果你完全不懂 Python,连glob是干嘛的、sheet_name=None为什么返回字典都搞不清,那 AI 给你再好的代码,你也只能干瞪眼。能读懂,才谈得上修改和复用。
三、AI 工具链本身,大量以 Python 为入口
这一点可能比想象中更关键。现在主流的 AI 生态,从模型训练、微调,到数据处理、评测,Python 几乎是默认语言。你想调用一个大模型 API,官方示例大概率是 Python;你想跑个开源模型,README 里第一条命令往往是pip install。
哪怕你只是想把 AI 接进自己的小工具里,也绕不开 Python。比如用几行代码调一次接口:
import os from openai import OpenAI client = OpenAI(api_key=os.getenv("API_KEY")) def ask(prompt: str) -> str: resp = client.chat.completions.create( model="gpt-4o-mini", messages=[{"role": "user", "content": prompt}], temperature=0.3, ) return resp.choices[0].message.content if __name__ == "__main__": print(ask("用三句话解释什么是向量数据库"))这种代码门槛低到几乎为零,但它带来的改变很大:你不再只是 AI 的“使用者”,而是能把 AI 嵌进自己工作流的人。这个差别,在半年一年后会被拉得很开。
四、别把“学 Python”理解成“当程序员”
我特别想强调这一点。很多人一听学编程就头大,觉得那是科班出身才干的事。其实不是。未来学 Python 更像学 Excel、学英语——它是一项通用工具技能,不是职业门槛。
你可能是运营,需要批量处理数据;可能是产品,想快速验证一个想法;可能是财务,想自动化对账。这些场景都不需要你成为工程师,但需要你能写出几十行能跑的脚本,并且能看懂 AI 给你的东西。
我自己的习惯是,遇到重复劳动先想“能不能用脚本解决”,然后让 AI 帮我起草,我再改。这个过程里,Python 基础决定了我是“被 AI 牵着走”还是“指挥 AI 干活”。
五、给想入门的人一点实在建议
- 别从语法书啃起。直接找一个自己真实的小需求,比如整理照片、合并表格,边做边查。
- 把 AI 当结对伙伴,不是答案机。让它解释代码、指出问题,而不是直接复制粘贴。
- 重点练“读代码”。能读懂别人(或 AI)写的代码,比能默写语法重要得多。
- 先跑通,再优化。别一上来就追求优雅,能解决问题就是好代码。
写在最后
“95% 的代码由 AI 生成”这个说法可能有点夸张,但方向大致没错。真正的问题不是“还要不要学编程”,而是“当写代码变得便宜,什么能力变得更贵”。我的答案是:把问题讲清楚的能力,以及看懂并改造 AI 产出的能力。而 Python,恰好是训练这两种能力成本最低的入口。
所以与其纠结 AI 会不会取代程序员,不如先花一个周末,用 Python 把手上那件重复的破事自动化掉。你会发现,刚需这个词,不是喊出来的,是用出来的。