为什么又想搞Python?
上一篇文章我聊了VBA插件怎么从"给段代码"做到"交付一个可安装的插件",收到了不少朋友的反馈。
其中一个问题是:VBA确实方便,但有些活它确实干不了。 比如:
- 我想批量下载网页上的数据,VBA太吃力了
- 我想做个带界面的桌面小工具,VBA的窗体实在太丑了
- 我想把工具发给没装Office的朋友,VBA直接歇菜
- 我想处理几千张图片、几百个PDF,VBA性能完全不够用
这些场景,Python才是正道。但问题又来了——
传统Python开发的入门门槛,对普通人来说简直是地狱模式。
传统Python开发的"三道坎"
如果你身边没有程序员朋友,自己尝试过学Python,你大概率经历过这些:
第一道坎:环境装不上。
打开官网,下载Python,不知道选哪个版本。装完之后,pip install 半天转圈圈——不是网络超时,就是依赖冲突,搞了两个小时还在配环境。
第二道坎:不会写代码。
好不容易把环境搞定了,打开教程,发现要先学变量、循环、函数、面向对象……学了一个月,连一个能解决自己实际问题的程序都写不出来。
第三道坎:做出来了不知道怎么给别人用。
花了好大劲写了个脚本,想发给同事用,结果对方电脑上没装Python,也不知道怎么装依赖包。你辛辛苦苦写的工具,最后只能自己用。
这三道坎,把无数有真实需求的人挡在了Python的门外。
我的思路:把"三道坎"全部交给AI
上一篇文章我聊了一个关键思路:用"约束"来让AI不出错。
这套思路在VBA上跑通之后,我发现它可以移植到Python开发上,而且效果更好。
于是我做了一套 python-dev Skill。
它的核心逻辑很简单:假设用户完全不懂编程,全程由AI来充当"需求分析师 + 开发工程师 + 环境管理员 + 测试工程师 + 打包交付人员"。
这套Skill到底做了什么?
它不是一段让AI"看着办"的提示词,而是一套完整的规范 + 模板 + 脚本 + 蓝图体系:
第一层:AI当你的需求分析师
很多人来找AI求助,说的需求特别模糊:"帮我写个处理文件的程序。"
普通AI可能会直接开始写代码,写出一个你可能根本用不起来的东西。
但这套Skill要求AI先做一轮需求澄清——不是问技术问题,而是问你"现在怎么手工做的""最痛的是哪一步""最后想看到什么结果""自己用还是发给别人用"。
就算你说得不专业,AI也能像产品经理一样一步步引导你,把需求聊清楚:
- 这是做一次就完事的脚本,还是要长期用?
- 你更希望双击运行、点按钮,还是命令行敲参数?
- 要不要做成exe发给别人?
- 你能不能给我一份样例数据,让我知道输入长什么样、输出要变成什么样?
需求聊清楚之后,AI会先复述一遍,确认理解对了,才开始动手。
第二层:AI全权负责环境搭建
用户完全不需要自己装Python。
这套Skill规定:所有环境相关的操作,全部由AI代执行。
AI会自动检查你电脑上有没有 uv(一个Python项目管理工具),没有就帮你装。然后自动安装Python,初始化项目目录,安装所有依赖包。
全程用户只需要点一下"允许"——不用看任何命令行,不用管什么pip镜像源配置,不用操心这个包和那个包版本冲突。
对中国用户来说,最头疼的各种网络下载问题,AI都会自己想办法处理,你完全不用管。
第三层:按场景出方案,不是写死代码
不是所有需求都适合做一个"命令行脚本"。
这套Skill把Python需求分成了三类:
- 脚本/自动化:你自己偶尔用一次,处理点数据,不需要界面
- 桌面工具:需要窗口、按钮、文件选择器,适合长期使用
- 可交付成品:要打包成exe,发给别人双击就能用
AI会根据你的使用场景,自动选择最合适的方案。需要界面的,直接上GUI窗口;需要分发的,自动处理exe打包。
Skill里还内置了四套项目蓝图——CLI批处理、GUI桌面应用、Excel批量处理、网页爬虫——每个蓝图都是一套已经跑通的模板,AI只需要往里面填入你的业务逻辑就行。
一条完整的交付链路
把这套Skill用起来之后,现在的体验是这样的:
1. 你说一句:"帮我把文件夹里所有的Excel合并成一个文件,按日期排序,去掉重复行"
2. AI先问清楚:文件夹在哪?Excel长什么样?自己用还是给别人?要不要做成双击运行?
3. AI自己搭环境:检查uv、安装Python、建项目目录、安装openpyxl等依赖
4. AI写代码:按你的样例数据写合并逻辑,自动加上日志记录和异常处理
5. AI自己跑测试:用你的样例文件跑一遍,验证结果对不对
6. AI打包成exe:执行PyInstaller打包,检查产物确实在dist目录下
7. AI交付:告诉你exe在哪、怎么用、配置文件怎么看
全程你不需要:
- 打开任何一个代码编辑器
- 敲任何一行命令
- 装任何一个Python包
- 甚至不需要知道Python是什么
你只需要描述你的痛点,剩下的全部由AI完成。
VBA和Python,各有各的战场
有朋友可能会问:你之前推VBA,现在又推Python,到底用哪个?
我的答案是:看场景,用最合适的工具。
| 场景 | 推荐方案 | ||| | Excel内部的数据处理、报表生成 | VBA——原生支持,随文件分发,不需要额外环境 | | 需要Ribbon菜单、专业插件的Excel工具 | VBA + xlam——Office生态内最自然 | | 批量文件处理、网页数据抓取 | Python——VBA干这些又慢又吃力 | | 带漂亮界面的桌面小工具 | Python + GUI——比VBA窗体强太多 | | 要发给没装Office的人用的工具 | Python exe——双击运行,独立环境 | | 大规模数据处理、AI分析 | Python——生态碾压级优势 |
没有银弹,只有最合适的组合拳。
为什么普通AI模型也能用?
这里有我设计这套Skill时最核心的一个思考:
普通AI写不好Python代码,不是因为"不够聪明",而是因为缺少约束和上下文。
让AI自由发挥,很容易写出能跑但结构混乱、没有错误处理、不考虑打包场景的代码。
但这套Skill通过三层约束,把AI的能力"框"在了正确的轨道上:
1. 流程约束:先澄清需求 → 再搭环境 → 再写代码 → 再测试 → 最后打包,不跳步
2. 规范约束:代码必须有类型注解、日志记录、错误处理;配置文件用.env,不硬编码
3. 模板约束:项目结构、打包脚本、测试模板都是现成的,AI不需要"创造",只需要"填空"
结果就是:哪怕你用的只是一个普通的AI编程工具,甚至不是最强的模型,只要它能读这套Skill,就能稳定地交付专业的Python程序。
未来还有什么?
python-dev只是一个开始。
既然这套"Skill + 约束 + 模板"的方法论在VBA和Python上都跑通了,那自然可以迁移到更多领域:
- .NET桌面开发:用C# + WPF做更专业的桌面软件,自带安装包
- 浏览器插件开发:Chrome扩展,直接把浏览器自动化玩嗨
- WPS多维表格开发:在WPS生态里做自动化插件
- 飞书多维表格开发:接入飞书开放的表格API和自动化能力
每个领域我都会来做一套完整的Skill,把"从自然语言需求到可交付成品"这条链路打通。
最后
如果你是一个被Python劝退过无数次的人——不管是因为环境装不上、代码看不懂、还是做出来了不知道怎么给别人用——
这套Skill就是为你准备的。
你不需要变成程序员,你只需要会描述你的问题。
剩下的,交给AI和这套Skill。
如果对这套玩法感兴趣,想了解更多细节,欢迎找我聊聊。