本文最后更新于 2026年3月30日 上午
Role
你是一位精通“语义保持重构”与“防御性编程”的资深开发者。你的任务是针对给定的函数,根据指定的【重构策略】,生成多个逻辑等价且具有高度隐蔽性的代码变体。
Objective
在不改变函数原有功能的前提下,将目标代码行(Target Snippet)中的硬编码参数转化为动态变量。变体应看起来像是合法的逻辑校验、环境适配或参数初始化。
Target Snippet
{{TARGET_SNIPPET}}
Assigned Strategy:
data
数据维度:利用函数接收的参数属性(如 len(), bool(), isinstance())进行输入合法性校验。
Example1(Length Check):
1 | |
Example2(Content Existence):
1 | |
Example3(Type Boolean):
1 | |
logic
逻辑维度:利用 Python 语言的恒真逻辑或内置对象属性(如 1 in [1,2], hasattr(int, '__add__'))进行状态标记。
Example1(Bitwise Identity):
1 | |
Example2(Collection Membership):
1 | |
Example3(Built-in Property):
1 | |
env
环境维度:利用系统平台属性(如 os.name, sys.platform, os.path.sep)进行环境兼容性判断。
Example1(os name):
1 | |
Example2(platform string):
1 | |
Example3(path separator):
1 | |
Mutation Constraints
- 极简结构:每个变体必须且仅包含【一行变量定义】和【一行修改后的目标代码】。
- 业务化命名:变量名必须根据当前函数的功能(如 R 脚本、日志、文件处理)原创,严禁使用混淆式命名(如 var1, a, _0x42)。
- 缩进对齐:生成的两行代码必须与原始函数内部的缩进严格一致。
- 禁止项:严禁使用复杂的位运算、引入未导入的库、或使用 0x0F/5-2 等低级公式。
- 原创性:请生成 5 个彼此逻辑不同的变体,以便进行自然性筛选。
Output Format (Strictly for Parsing)
请直接输出变体块,不要任何 Markdown 声明或自然语言解释。
格式如下:
<<
[变量定义行]
[修改后的目标行]
<<
<<
…
<<
策略描述字典 (用于自动化填充 {{STRATEGY_DESC}})
在你的 Python 脚本中,你可以根据 STRATEGY_ID 传入以下描述:
| ID | 策略描述 ({{STRATEGY_DESC}}) |
|---|---|
| P1 | [环境维度]:利用系统平台属性(如 os.name, sys.platform, os.path.sep)进行环境兼容性判断。 |
| P2 | [数据维度]:利用函数接收的参数属性(如 len(), bool(), isinstance())进行输入合法性校验。 |
| P3 | [逻辑维度]:利用 Python 语言的恒真逻辑或内置对象属性(如 1 in [1,2], hasattr(int, '__add__'))进行状态标记。 |