我有一个具有8个列对的.csv文件,如下所示:
level_1,level_1_desc, level_2, level_2_desc, level_3, level_3_desc, level_4,level_4_desc
这表示层次结构或树结构,其中:
- Level 1
- Level 2
- Level 3
- Level 4
我可以读取.csv文件的内容,并将它们分配给python中的字典变量,就像字典一样。
我了解使用Python模块创建元素的基础 xml.etree.cElementTree
您可以在其中创建全新的.xml文件。
我一直在努力弄清楚如何设置程序。
我的策略是:使用for循环创建所有1级节点,并为.csv编制索引,遍历文件的每一行,比较当前级别并将节点置于该级别,然后继续进行下一行。如果已创建上一级节点,则移至下一级节点...依此类推。
最终结果应为:
<root>
<level1>
<level2>
<level3>
<level4>A<level4 />
<level4>B<level4 />
<level3 />
<level2 />
<level1 />
<root />
我不会尝试逐行浏览csv文件。相反,我将首先尝试将其全部放入最逻辑的python数据结构中,然后再进行操作。
在我看来,最合乎逻辑的方法是创建一个字典列表,其中CSV中的每一行都是字典中列表中的一个元素。之后,遍历列表元素并执行xml创建的东西(我没有经验,因此,如果您的问题在那里,对不起)
如果您可以提供一个更好的输入CSV示例,也许人们可以更好地回答。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句