Python ElementTree找到第一个元素

时间:2014-02-14 18:04:46

标签: python

我需要获取节点的第一个也是唯一的子元素,并保证孩子在那里。我可以写这样的东西

def get_first(Node):
  for x in Node:
    return x

但我希望有更优雅的东西。有谁知道什么?

2 个答案:

答案 0 :(得分:1)

好吧,我个人认为您的代码没有任何问题。它很干净,适用于任何可迭代对象。

尽管如此,如果您必须取消for循环,那么您可以使用next

def get_first(Node):  # Also, Node should be lowercase according to PEP 8
    return next(Node)

但是,这只适用于迭代器。如果Node不是迭代器,那么您可以使用iter创建一个:

def get_first(Node):
    return next(iter(Node))

答案 1 :(得分:1)

您是否尝试过索引?

def get_first(node):
    return node[0]