【OpenDRIVE_Python】使用python脚本输出OD数据中含有隧道的道路ID和隧道信息

示例代码说明:

遍历OD数据中每条道路Road,若Road中存在隧道tunnel属性,则将该道路ID和包含的所有隧道信息输出到xml文件中。

复制代码
import xml.dom.minidom
from xml.dom.minidom import parse
from xml.dom import Node
import sys
import os
# 读取OpenDRIVE文件路径
xml_filepath = r'E:\OpenDRIVE.xodr'
# 得到文件对象
dom_obj = xml.dom.minidom.parse(xml_filepath)
# 得到xml文档对象
root = dom_obj.documentElement
roads = root.getElementsByTagName('road')
filepath = "D:\\tunnel.xml"
if (os.path.exists(filepath)):
    os.remove(filepath)
fp = open(filepath, 'a+')
for road in roads:
    tunnels = road.getElementsByTagName("tunnel")
    if (len(tunnels) > 0):
        print(road.getAttribute("id"))
        fp.write((road.getAttribute("id")))
        fp.write('\n')
        for j in range(len(tunnels)):
            print(tunnels[j].toxml())
            fp.write(tunnels[j].toxml())
            fp.write('\n')
fp.close()

OpenDRIVE文件示例:

xml输出结果示例:

相关推荐
黑不拉几的小白兔3 分钟前
Python爬虫学习前传 —— Python从安装到学会一站式服务
爬虫·python·学习
Reese_Cool7 分钟前
【Python】函数 超全总结及练习案例
python
ACGkaka_7 分钟前
Python学习(十)IO编程(文件读写、StringIO和BytesIO、操作文件和目录、序列化)
python·学习·php
爱写代码的小朋友32 分钟前
Python wxPython 库实现文本框与按钮交互示例
python
python机器学习ML40 分钟前
机器学习——集成学习、线性模型、支持向量机、K近邻、决策树、朴素贝叶斯、虚拟分类器分析电动车数据集Python完整代码
python·算法·机器学习·分类
计算机徐师兄1 小时前
Python基于Django的图像去雾算法研究和系统实现(附源码,文档说明)
python·算法·django·图像去雾·图像去雾算法·python图像去雾算法研究
王旭·wangxu_a1 小时前
【例43.3】 转二进制
c语言·数据结构·c++·python·算法·蓝桥杯-算法提高·基础问题
我想学LINUX1 小时前
【2024年华为OD机试】(B卷,100分)- 数据分类 (Java & JS & Python&C/C++)
java·c语言·javascript·python·华为od
i鹰斯坦爱吃红烧you1 小时前
探索 Transformer²:大语言模型自适应的新突破
人工智能·pytorch·python·深度学习·语言模型·自然语言处理·transformer
蒙娜丽宁1 小时前
【Python】深入探讨Python中的单例模式:元类与装饰器实现方式分析与代码示例
开发语言·python·单例模式