【发布时间】:2012-08-31 11:17:45
【问题描述】:
我有一个大约 30MB 的 XML 文件,里面有大约 300000 个元素。
我使用下面的代码来处理这个文件。
xmldoc=xml.dom.minidom.parse("badges.xml")
csv_out=open("badge.csv","w")
for badge in xmldoc.getElementsByTagName("row"):
some processing here
csv_out.write(line)
文件只有 30MB,但是当我在我的 MBP(10.7,8G RAM)上运行这个脚本时,它使用了将近 3GB 内存。为什么这么简单的脚本和这么小的文件会占用这么多内存?
最好的问候,
【问题讨论】:
-
你如何测量内存使用情况?
-
用像 lxml 这样的合理解析器试试。
-
minidom 不是解析器,它是原型级别的废话
-
看看“这里的一些处理”代码也会很有帮助。
标签: python xml performance csv