极奇策RPA技术教程:删除字典键 (NodeDictRemove) - 自动化开发与配置详细指南

删除字典键
📖 节点概述
从字典中删除指定的键。支持单键删除、批量删除(使用 JSON 数组传入多个键),以及通过路径语法(如 user/address/city)删除嵌套字典中的深层键。同时支持数组通配符 [*] 对数组中的每个元素批量删除特定键。提供“清理空字典”选项,可在删除后自动移除变为空的嵌套字典(数组元素中的空字典也可被移除)。该节点为纯数据节点,无执行端口。
💡 使用场景:
- 数据脱敏:从用户信息字典中删除敏感字段(如密码、身份证号)。
- 配置精简:删除不需要的配置项,保留核心参数。
- 嵌套清理:从深层嵌套的 JSON 结构中删除冗余字段。
- 批量删除:一次删除多个不相关的键,提高 效率。
- 动态路径删除:根据变量构建删除路径(如
users/{id}/email),实现程序化清理。 - 数组元素清理:对于包含对象的数组,删除每个对象中的某个字段,并可选择移除变为空的对象。
🎮 实战连线指南:如何正确使用它?
节点有两个主要输入端口:原字典(目标字典)和 键(要删除的键名或路径),以及一个高级选项“清理空字典”。输出端口 新字典。
场景案例:删除用户信息中的年龄字段
准备字典:在“原字典”文本框中输入 JSON:
{"name": "张三", "age": 30, "email": "zhang@example.com"}或从上游连线传入字典对象。
设置键:在“键”输入框中填写
age。获取结果:
新字典输出:{"name": "张三", "email": "zhang@example.com"}
嵌套路径删除示例:
- 原字典:
{"user": {"profile": {"age": 25, "city": "上海"}}} - 键:
user/profile/age - 结果:
{"user": {"profile": {"city": "上海"}}}
批量删除示例:
- 键:
["age", "email"](JSON 数组格式) - 原字典:
{"name":"李四","age":28,"email":"li@ex.com","city":"北京"} - 结果:
{"name":"李四","city":"北京"}
数组通配符示例:
- 原字典:
{"users": [{"name":"A","age":20},{"name":"B","age":25}]} - 键:
users/[*]/age - 结果:
{"users": [{"name":"A"},{"name":"B"}]}
清理空字典:
- 原字典:
{"a":{"b":{}},"c":1} - 键:
a/b - 不勾选“清理空字典” →
{"a":{},"c":1} - 勾选“清理空字典” →
{"c":1}(因为a变为空字典后被自动删除)
⚙️ 引脚与参数说明
📥 输入引脚
| 引脚名称 | 数据类型 | 说明 |
|---|---|---|
| 原字典 | STRING / DICT | 目标字典。支持字典对象、JSON 字符串或简易键值对格式(通过【创建字典】节点相同的解析器)。 |
| 键 | STRING / LIST | 要删除的键名或路径。支持以下格式:<br>• 单键名:age<br>• 嵌套路径:user/profile/age(使用斜杠分隔)<br>• 批量 JSON 数组:["age","email"]<br>• 数组通配符:users/[*]/age(删除数组中每个对象的 age 键)<br>• 索引访问:users/[0]/name(删除第一个用户的 name) |
⚙️ 控件参数
| 控件名称 | 类型 | 说明 |
|---|---|---|
| 原字典 | 多行文本框 | 手动输入字典内容(支持 JSON、Python 字面量、简易格式)。连线时优先使用连线值。 |
| 键 | 单行文本框 | 手动输入要删除的键(支持上述多种格式)。 |
| 清理空字典 | 复选框(高级) | 勾选后,删除键后若字典变为空,则自动从父级中移除该字典。对于数组中删除后变为空字典的元素,也会被移除。 |
📤 输出引脚
| 引脚名称 | 数据类型 | 说明 |
|---|---|---|
| 新字典 | DICT | 删除指定键后的新字典(原字典不会被修改)。 |
🔧 路径语法说明
- 斜杠分隔:
a/b/c表示字典a下的键b下的键c。 - 转义斜杠:如果键名本身包含斜杠,使用
\/转义,例如http\/https。 - 数组通配符:
[*]表示遍历数组中的每个元素,对每个元素执行删除操作。 - 数组索引:
[0]表示数组的第一个元素(索引从 0 开始)。 - 类型转换:键路径中的数字会被自动转为整数索引(适用于字典键为数字的情况);
<int>123可强制转为整数键;<bool>true可转为布尔键。
⚠️ 注意事项
- 原字典不变:节点返回删除后的新字典,不会修改原输入字典。
- 键不存在时:不会报错,原字典保持不变。
- 数组通配符与清理空字典:当删除数组元素的某个键后,如果该元素变为空字典,且勾选了“清理空字典”,则该元素会被从数组中移除。同时,如果数组因此变为空,则数组本身也可能被父级清理(取决于父级是否也变为空)。
- 批量删除 JSON 数组:输入的 JSON 数组格式必须严格,如
["key1","key2"],使用双引号。 - 路径中的特殊字符:尽量避免在键名中使用
/,如需使用请转义。 - 性能:对大型嵌套结构进行批量删除时,操作会遍历整个结构,注意数据量。
💎 小贴士:
- 使用可视化工具按钮(眼睛图标)可以弹出面板,直观地浏览字典结构并选择要删除的键,自动填入“键”输入框。
- 清空按钮(🗑️)可快速清除“键”输入框的内容。
- 路径
[*]非常有用,可以批量处理数组中的每个元素,常用于 API 响应数据的精简。- 结合【变量设置】节点,可以将新字典覆盖原变量,实现原地修改效果。
- 该节点是纯数据节点,无需执行信号,可在数据流中随时使用。
这篇文档对您有帮助吗?
您的反馈将帮助我们持续优化文档内容

