在Python中如何按给定的顺序对XML数据进行排序

2024-04-29 00:51:22 发布

您现在位置:Python中文网/ 问答频道 /正文

不确定这是否会是一个重复的问题。我试图找到一个相关的答案,但没有完全找到..我来。。在

这是我在XML格式的数据

<item>
<title>level red</title>
<link>something</link>
<item>

<item>
<title>level green</title>
<link>something</link>
<item>

<item>
<title>level yellow</title>
<link>something</link>
<item>

<item>
<title>level red</title>
<link>something</link>
<item>

<item>
<title>level yellow</title>
<link>something</link>
<item>

<item>
<title>level red</title>
<link>something</link>
<item>

<item>
<title>level green</title>
<link>something</link>
<item>

<item>
<title>level black</title>
<link>something</link>
<item>

我的目标是对这些数据进行排序,其中级别红色优先,级别绿色和级别黄色出现在xml列表中,其余级别保持不变。。在

我的问题是如何使用Python来实现这一点?在

我知道我可能需要

^{pr2}$

我也看到过这样的代码按顺序排序

sorted_b = []
for i in a:
    for j in b:
        if j.id == i:
            sorted_b.append(j)
            break

我的问题是我如何把代码放在一起,然后我如何按照我给定的颜色优先级顺序对数据进行排序?在

如有任何建议或指示,我们将不胜感激


Tags: 数据代码for排序顺序titlelinkgreen
1条回答
网友
1楼 · 发布于 2024-04-29 00:51:22

Python sorted()函数可能会派上用场:

https://wiki.python.org/moin/HowTo/Sorting

尤其是用钥匙。。。争论。 尝试一下

def getItemLevel(item):
  return item.getElementsByTagName("title")[0].data

newlist = sorted(itemlist, key=getItemLevel)

相关问题 更多 >