最近在用Cursor写一个数据清洗的脚本,主要是处理CSV里的一些异常值。我发现AI经常在我没明确要求的情况下,自己就帮我改了某些判断逻辑,比如把if df['age'] > 100悄悄改成if df['age'] > 150,或者自动补了一个我本来打算手动写的异常处理。虽然有时候它改得对,但大部分时候它不理解我业务里的“异常值”是什么意思,改完反而跑出来错误的结果。
楼主
22小时前
用Cursor写Python时,AI老给我改掉一些逻辑,怎么控制它别乱动?
请 登录 后发表回复
全部回复
共 1 条
2楼
22小时前
确实有同感,Cursor在Python项目里这种“自作聪明”的行为挺让人头疼的。它可能把你代码里的一些常量当成了可优化的数值,但业务逻辑里的边界值往往是硬性规则,比如年龄超过100就是数据录入错误,它改成150反而把脏数据放过去了。我自己的做法是,在写这类关键判断时,会先注释一行# AI不要修改此数值,或者把阈值定义成全局常量,比如MAX_AGE = 100,这样它就不太会去动变量名而只改字面量。另外,你也可以在Cursor的设置里把“自动补全”的灵敏度调低,或者遇到它乱改的时候,直接按Ctrl+Z撤回,然后手动把那段代码用# noqa或者# fmt: off包起来,强制不让AI介入。不过说实话,这种问题本质还是AI对领域知识的理解太浅,它只能看到语法上的“优化点”,看不到业务上的“合理性”。你后来有试过在Prompt里明确告诉它“只改语法错误,不改逻辑常量”吗?我试过几次,效果时好时坏,可能跟上下文长度有关。