我的树数据名称不是treeData而是data,我的单个节点数据格式为:id-当前节点id,pid-当前节点的父节点id,children-当前节点的子节点数组。请根据这些信息将上面的删除方法具体代码重新写一遍发给我
时间: 2024-02-12 10:06:49 浏览: 59
好的,根据您提供的信息,以下是删除指定节点及其子节点的代码:
```python
def delete_node(data, node_id):
for i in range(len(data)):
if data[i]['id'] == node_id:
del data[i]
return True
else:
if 'children' in data[i]:
if delete_node(data[i]['children'], node_id):
return True
return False
```
其中,`data`是您的树形数据,`node_id`是要删除的节点的id。如果找到了要删除的节点,就删除它并返回True;否则,递归遍历该节点的子节点,直到找到要删除的节点或遍历完整个树。如果找到了要删除的节点就返回True,否则返回False。
阅读全文