极奇策RPA技术教程:列表截取 (NodeListSlice) - 自动化开发与配置详细指南

列表截取
📖 节点概述
从列表中截取指定范围的子列表(切片)。支持起始索引和结束索引,遵循左闭右开规则(包含起始,不包含结束)。索引可以为负数(-1 表示最后一个元素)。结束索引留空表示截取到末尾。输入支持列表对象、JSON 数组字符串或多行文本(每行一个元素)。输出为截取后的新列表。该节点为纯数据节点,无执行端口。
💡 使用场景:
- 分页获取:根据页码和每页大小截取子列表(起始 = (page-1)size,结束 = pagesize)。
- 取前 N 个元素:起始 0,结束 N。
- 取后 N 个元素:起始 -N,结束留空。
- 移除首尾元素:起始 1,结束 -1(去掉第一个和最后一个)。
- 数据抽样:按固定间隔截取(需配合步长,当前节点不支持步长,可多次使用或使用其他节点)。
🎮 实战连线指南:如何正确使用它?
节点有三个输入端口:列表、起始索引、结束索引,输出端口 截取后列表。结束索引留空(或不填)表示直到末尾。
场景案例:获取列表中的第 2 到第 4 个元素
- 准备列表:假设列表为
["a", "b", "c", "d", "e"],可以:- 从上游传入列表,或
- 在“列表”文本框输入(每行一个):
a b c d e
- 设置起始索引:
1(因为索引从 0 开始,第 2 个元素索引为 1)。 - 设置结束索引:
4(不包含索引 4,即截取索引 1,2,3 的元素)。 - 获取结果:
截取后列表输出["b", "c", "d"]。
负索引示例:
- 列表
[1,2,3,4,5],起始-2,结束留空 →[4,5]。 - 起始
1,结束-1→[2,3,4](去掉首尾)。
结束索引留空:
- 起始
2,结束不填 → 从索引 2 到末尾。
⚙️ 引脚与参数说明
📥 输入引脚
| 引脚名称 | 数据类型 | 说明 |
|---|---|---|
| 列表 | LIST / STRING | 待截取的列表。可以是列表对象、JSON 字符串或多行文本(每行一个元素)。 |
| 起始索引 | INT | 截取的起始索引(包含)。支持负数。默认为 0。 |
| 结束索引 | INT | 截取的结束索引(不包含)。支持负数。留空表示直到末尾。默认为留空。 |
⚙️ 控件参数
| 控件名称 | 类型 | 说明 |
|---|---|---|
| 列表 | 多行文本框 | 手动输入列表内容(每行一个元素,或 JSON 列表)。连线时优先使用连线值。 |
| 起始索引 | 单行文本框 | 手动输入起始索引。默认0。 |
| 结束索引 | 单行文本框 | 手动输入结束索引。留空表示到末尾(默认值已设为空字符串)。 |
📤 输出引脚
| 引脚名称 | 数据类型 | 说明 |
|---|---|---|
| 截取后列表 | LIST | 截取后的子列表(新列表)。 |
🔧 行为说明
- 切片规则完全遵循 Python 列表切片语法:
list[start:end]。 - 如果起始索引超出范围(正数大于等于列表长度,或负数绝对值超过长度),返回空列表。
- 如果结束索引超出范围,自动截取到列表末尾。
- 起始索引大于结束索引且步长为正时,返回空列表(当前不支持步长)。
- 输出总是新列表,原列表不被修改。
⚠️ 注意事项
- 结束索引默认值:节点将空字符串或
"0"视为留空,其余情况按数字解析。因此若想截取到第一个元素之前(即空列表),可指定结束索引为 0。 - 索引类型:索引输入支持整数、浮点数(截断)或数字字符串。无法解析时使用默认值(起始 0,结束 None)。
- 列表输入格式:与【列表反转】节点相同,支持列表对象、JSON 数组、多行文本。
- 空列表:输入为空列表时,输出也为空列表。
- 性能:切片操作时间复杂度 O(k),k 为子列表长度。
💎 小贴士:
- 需要截取前 10 个元素:起始
0,结束10。- 需要截取最后 5 个元素:起始
-5,结束留空。- 需要去掉第一个元素:起始
1,结束留空。- 需要去掉最后一个元素:起始
0,结束-1。- 配合【列表长度】节点,可以动态计算结束索引(如结束 = 长度 - 1)。
- 由于是纯数据节点,可在数据流中随时使用,无需执行信号。
这篇文档对您有帮助吗?
您的反馈将帮助我们持续优化文档内容

