使用ElementTree进行Python3 xml解析和信息提取

问题描述

我必须解析一个XML文件,其中包含必须重写的软件的设置。不幸的是,我对XML解析并不熟悉,到目前为止,我发现的所有教程都只涵盖了非常简单的用例。该XML文件的结构如下:

<department name="R&D">
    <section name="Prototyping">
        <room name="A.2.25">
            <machine name="Yamaha YSM" serial="123456"/>
            <machine name="Yamaha YSM" serial="123556"/>
            <machine name="Yamaha YSM" serial="654321"/>
            <machine name="omron X-Ray" serial="X235-566"/>
        </room>
    </section>
</department>

实际列表更长,包含更多的机器,房间和区域。现在的问题是:我必须将所有这些属性放入不同的PyQt5组合框中,但是它们彼此依赖。因此,当用户在第一个组合框中选择“ R&D”时,相应的部分(在我的示例中为“原型”,但实际上还有更多)应在第二个组合框中可见并可以选择。并根据用户在第二个组合框中选择的区域,在第三个组合框中应显示相应的条目,以此类推。每个房间都有不同的计算机。

我正拼命尝试使用ElementTree解决此问题,但我真的被卡住了。我已经尝试了两天,但没有找到解决方案。也许有比ElementTree更好的解析器?也许这是可以帮助您的专家...

预先感谢(一百万)

解决方法

xml2dict可以在这里提供帮助

List<Student>