我正在尝试获取一个类似于此的xml文件,以便将其导入moodle成绩册:
1
100
0
1
101
4
1
102
10
2
100
0
2
101
4
2
102
10
我试图用python编写一些代码,在仔细阅读了文档之后,我能想到的最好的方法是:import xml.etree.cElementTree as ET
students = [1,2]
assignments=[100,101,102]
scores=[0,4,10]
results = ET.Element("results")
result = ET.SubElement(results,"result")
student = ET.SubElement(result,"student")
assignment = ET.SubElement(result,"assignment")
score = ET.SubElement(result,"score")
for s in students:
for a in range(len(assignments)):
student.text = str(s)
assignment.text = str(assignments[a])
score.text = str(scores[a])
results.append(result)
tree = ET.ElementTree(results)
tree.write('test.xml')
这几乎满足了我的要求,但最后一个条目似乎覆盖了前面的所有条目,如图所示:
2
102
10
2
102
10
2
102
10
2
102
10
2
102
10
2
102
10
2
102
10
我试图找到一个解决方案,但似乎大多数问题只涉及编写一个带有不同元素的xml文件。我想不通的是如何使用同一个元素标记,但是为每个元素分配不同的值。