2. 使用lxml模块,它是一个高性能的XML和HTML解析器,可以有效的降低内存占用。
3. 使用iterparse()函数,它可以遍历XML文档,可以降低内存占用。
4. 使用xml.sax模块,它是一个基于事件驱动的XML解析器,可以有效的降低内存占用。
class Fileoperator:def openfile(self,filepath):
dom = xml.dom.minidom.parse(filepath)
root = dom.documentElement
aa = dom.getElementsByTagName('durTick')
for a in aa:
print a.firstChild.data
你代码里面的 aa 可以直接用for循环遍历。不需要用k做index.
这个任务的关键点有三处:一个是解析xml,获取node与edge的信息,python自带的xml.etree.ElementTree就可以;
二是构造图的数据结构,可以用邻接链表;
三是做BFS,这个是标准的图算法,在二的基础上不难实现。
建议题主先试着自己做一做。加油。