lxml 的 findall 和反向排序

1 投票
2 回答
841 浏览
提问于 2025-04-17 04:25

如何将所有找到的元素按相反的顺序打印出来?

labels = tree.findall(label)

for label in labels:
     print etree.tostring(label)

2 个回答

4

这里有一个叫做 reversed 的函数:

for label in reversed(labels)

这个函数的作用是把一个列表里的内容反过来排列。比如,如果你有一个叫做“labels”的列表,里面的内容是从1到5,那么使用这个函数后,内容就会变成5到1。这样你就可以从后往前一个一个地处理这些内容了。

1

或者也许可以像这样:

labels = ET.findall(label)
alist =[]
for one_label in labels:
     alist.append(etree.tostring(one_label))

print sorted(alist, reverse=True) 

撰写回答