TreeExtract
TreeExtract[tree,pos]
提取 tree 在 pos 指定的位置处的子树.
TreeExtract[tree,{pos1,pos2,…}]
提取 tree 的子树列表.
TreeExtract[tree,pos,h]
提取 tree 的子树,并把 h 应用到每个子树.
TreeExtract[pos]
表示 TreeExtract 的算符形式, 可将其应用于树.
更多信息
- TreeExtract 允许在 Tree 对象中的任何位置提取子树的属性.
- 对于整数 i、j、…,TreeExtract[tree,{i,j,…}] 提取位置 {i,j,…} 处的子树. »
- TreeExtract 可使用 TreePosition 返回的位置指定以及在 TreeInsert 和 TreeReplacePart 等函数中使用的扩展形式. »
- 可用 {part1,part2,…} 给出单个位置 pos,其中,部分位置指定 parti 包括:
-
i 第 i 个孩子 -i 从末尾算起的第 i 个孩子 {i1,i2,…} 位置编号为 i1、i2、… 的孩子的列表 All 所有孩子 m;;n 从 m 到 n 的孩子 "key" 键为 "key" 的孩子 Key[k] 具有任意键 k 的孩子 TreeLevel[levelspec] levelspec 指定的层上的子树 TreeCases[pattern] 数据与 pattern 匹配的子树 TreeSelect[crit] crit 给出 True 的子树 - 在 TreeExtract[tree,{p1,p2,…}] 中,如果所有的 pi 都是列表,则 {p1,p2,…} 被解释为单个位置指定的列表 ,{p1,p2,…} 将被视为单个位置指定. »
- 提取一个层级的多个部分的指定将保留该层级的数据. »
- TreeExtract 适用于含有子树 Association 的树,使用与 Part 中相同的键规范. »
- TreeExtract[pos][tree] 等价于 TreeExtract[tree,pos].
范例
打开所有单元关闭所有单元基本范例 (4)
范围 (23)
属性和关系 (10)
TreeExtract 提取树的子树:
Extract 可以直接提取子表达式:
如果 pos 不是列表,则 pos 和 {pos} 是等效的规范:
对于整数列表 {i,j,…},TreeExtract[tree,{i,j,…}] 等价于 …@TreeExtract[j]@TreeExtract[i]@tree:
TreeExtract[tree,{{i1,j1,…},{i2,j2,…},…}] 等价于 {TreeExtract[tree,{i1,j1,…}],TreeExtract[tree,{i2,j2,…}],…}:
如果重复提及某个位置,则 TreeExtract 重复提取子树:
TreeExtract 可以使用 TreePosition 返回的位置列表:
在 TreeExtract[tree,{pos1,pos2,…},h] 中,h 对在每个 posi 处提取子树的结果进行封装:
在 TreeExtract[tree,pos,h] 中,h 对在位置 pos 处提取子树的结果进行封装:
如果所有 pi 都是列表,TreeExtract[tree,{p1,p2,…}] 将 {p1,p2,…} 视为单个位置指定:
对于 {{1,2},{3,4}},则提取位置 {1,2} 和 {3,4} 上的子树:
可能存在的问题 (2)
TreeExtract[tree,{}] 将返回一个空的子树列表,因为位置列表是空的:
TreeExtract[tree,{{}}] 提取位置 {} 处的子树,该位置指的是整个树:
因此,在 Part 中等价的规范可能会被 TreeExtract 区别对待:
如果 Part 和 TreeExtract 之间的一致性是必要的,需使用列表的列表并删除末尾额外的列表:
文本
Wolfram Research (2021),TreeExtract,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TreeExtract.html (更新于 2022 年).
CMS
Wolfram 语言. 2021. "TreeExtract." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2022. https://reference.wolfram.com/language/ref/TreeExtract.html.
APA
Wolfram 语言. (2021). TreeExtract. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/TreeExtract.html 年