这是我的 XML 文件test.xml
:
<nodes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://sumo.dlr.de/xsd/nodes_file.xsd">
<node id="0" x="0.0" y="0.0" type="traffic_light"/>
<node id="1" x="0.0" y="500.0" type="priority"/>
<node id="2" x="500.0" y="0.0" type="priority"/>
<node id="3" x="0.0" y="-500.0" type="priority"/>
<node id="4" x="-500.0" y="0.0" type="priority"/>
</nodes>
我想将其转换为包含以下列的 CSV 文件:id, x, y, type
. 所以它会是这样的:
id,x,y,type
0,0.0,0.0,traffic_light
1,0.0,500.0,priority
2,500.0,0.0,priority
3,0.0,-500.0,priority
4,-500.0,0.0,priority
我怎么能通过 Python 做到这一点?感谢您的关注!
使用xml.etree.ElementTree和csv模块:
import xml.etree.ElementTree as et
import csv
tree = et.parse('node.xml')
nodes = tree.getroot()
with open('node.csv', 'w') as ff:
cols = ['id','x','y','type']
nodewriter = csv.writer(ff)
nodewriter.writerow(cols)
for node in nodes:
values = [ node.attrib[kk] for kk in cols]
nodewriter.writerow(values)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句