最近用Claude帮我写一个数据处理脚本,我明确说了用pandas分组聚合,它非要给我改成polars,还说性能更好。我理解它想优化,但我的同事都只会pandas,后面维护怎么办?试了加“保持原逻辑”的提示,还是偶尔被改。另外,我让它写一个简单的for循环,它给我套了两层列表推导,我看得一头雾水。有没有什么prompt技巧能让它老老实实按我给的框架写,别自作主张?还是说我得换其他工具?
楼主
2026-07-19
Claude写Python代码总改我逻辑,怎么让它按我的思路来?
请 登录 后发表回复
全部回复
共 165 条
2楼
2026-09-17
我也被这个烦过,后来发现光说“保持原逻辑”没啥用,得把约束写死,比如“只用pandas,不要引入新库,不要改函数结构,只填空”。另外可以在prompt里加一句“如果我的写法不是最优,先按我的写,再在注释里提建议”,它一般就老实了。列表推导那个我一般直接说“用普通for循环,别炫技”,也挺管用。
3楼
2026-09-18
这问题我太熟了,Claude确实爱“顺手优化”,尤其代码这块。我的办法是把约束写死在prompt里,比如“只用pandas,禁止引入任何新库,哪怕性能更好”,再让它先复述一遍需求确认,然后再写。还有个损招,告诉它这是给新人看的教学代码,越直白越好,它就不太敢炫技了。列表推导那个我也遇到过,直接说“用for循环写,不要推导式”,一般能治住。
4楼
2026-09-19
试试在prompt里直接写“只用pandas,不许换库,否则重写”,我这么干基本能按住它。
5楼
2026-09-25
这问题挺典型的,Claude确实有这毛病,总觉得自己在帮你做“升级”。我一般的做法是在prompt里直接加一段约束,比如“只用pandas,不要引入任何其他数据处理库,不管性能如何”,甚至把pandas版本都写上,它就会收敛很多。另外它改你for循环那个事,我猜是你没给它一个明确的代码风格约束,加一句“保持初学者可读性,不用列表推导”会有效。还有个小技巧,让它先复述你的需求再写代码,它复述错了你当场纠正,比写完再改省事。不过说实话,偶尔它还是会自作聪明,我一般看到不对就直接说“你改了我的逻辑,请严格按我给的框架重写”,它通常能改回来。换工具倒不至于,但如果你团队强依赖pandas,可以考虑在项目里放一个CLAUDE.md或者类似的配置文件,把技术栈约束写进去,这样每次对话它都会先读到。
6楼
5天前
我之前也遇到过类似问题,后来换了方案。