我正在使用包含许多//Provided code
public int getHeight() {
return getHeight(root);
}
private int getHeight(Node node) {
if (node==null) {
return -1;
} else {
int leftHeight = getHeight(node.left);
int rightHeight = getHeight(node.right);
return Math.max(leftHeight, rightHeight) + 1;
}
}
//my code
public int getHeightI() {
return getHeightI(root);
}
private int getHeightI(Node node) {
Node curr = node;
int leftHeight = 0;
int rightHeight = 0;
if (curr!=null) {
while (curr.left!=null) {
leftHeight++;
curr = curr.left;
}
while (curr.right!=null) {
rightHeight++;
curr = curr.right;
}
}
return Math.max(leftHeight, rightHeight)+1;
}
元素的XML文档。但它们都没有ID或任何其他属性 - 只是元素标签。有什么方法可以使用python从另一个元素(除内容之外)告诉其中一个元素?例如,元素是否具有一些固有的索引号,这些索引号基于它们在文档中的位置或类似的东西?
答案 0 :(得分:0)
如果您有lxml ElementTree,并且想要获取特定元素的详细信息:
>>> element
<Element e at 0x7f71068abf38>
您可以在父元素和元素的完整路径中找到元素的索引:
>>> element.getparent().index(element)
0
>>> element.getroottree().getpath(element)
'/root/e[1]'
这就是你所拥有的一切。对于更复杂的信息(例如&#34;全局索引&#34;整个文档中的元素),您应该编写自定义代码。