我有一个包含 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 示例,也许人们可以更好地回答它。
关于python - 将 .CSV 文件转换为 .XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40943208/