【发布时间】:2021-08-09 16:09:21
【问题描述】:
所以我有一个 XML 文件。
<?xml version="1.0" encoding="utf-8"?>
<plist version="1.0" gjver="2.0">
<dict>
<k>LLM_01</k>
<d>
<k>_isArr</k>
<t/>
<k>k_0</k>
<d>
<k>kCEK</k>
<i>4</i>
<k>k18</k>
<i>18</i>
<k>k36</k>
<i>40</i>
<k>k2</k>
<s>Run</s>
</d>
<k>k_1</k>
<d>
<k>kCEK</k>
<i>4</i>
<k>k18</k>
<i>18</i>
<k>k36</k>
<i>40</i>
<k>k2</k>
<s>Run2</s>
</d>
</d>
<k>LLM_02</k>
<i>35</i>
</dict>
</plist>
我的目标是为键“k2”获取每个值为“Run”的元素。
所以起初,我想到了某种 for 循环:
root = ET.parse("This file.xml").getroot()
ELEMENTS = root.find('LLM_01')
for element in ELEMENTS:
"some code here"
问题是,我什至不知道在“这里有一些代码”部分放什么。我正在考虑制作一个包含所有键和值的字典,如下所示:
k_0 = {'kCEK' : 4, 'k18' : 18, 'k36' : 40, 'k2' : 'Run'}
k_1 = {'kCEK' : 4, 'k18' : 18, 'k36' : 40, 'k2' : 'Run2'}
但我不知道我该怎么做。 所以我的问题是:如何检查元素内部的键“k2”是否具有值“Run”? 如果是这样,将元素放入变量中?
我知道这可能容易或困难,但我真的不知道如何做到这一点。真的需要您的帮助,如果需要,请提前致谢!
(如果您需要更多解释,请告诉我。)
【问题讨论】:
标签: python python-3.x xml element elementtree