gpt4 book ai didi

Python XML 文件打开

转载 作者:数据小太阳 更新时间:2023-10-29 02:16:08 24 4
gpt4 key购买 nike

我正在尝试打开一个 xml 文件并对其进行解析,但是当我尝试打开它时,该文件似乎根本就没有打开它只是一直在运行,有什么想法吗?

from xml.dom import minidom
Test_file = open('C::/test_file.xml','r')
xmldoc = minidom.parse(Test_file)

Test_file.close()

for i in xmldoc:
print('test')

文件是 180.288 KB,为什么它从来没有出现在打印部分?

最佳答案

通过一些调整运行您的 Python 代码:

from xml.dom import minidom
Test_file = open('C:/test_file.xml','r')
xmldoc = minidom.parse(Test_file)

Test_file.close()

def printNode(node):
print node
for child in node.childNodes:
printNode(child)

printNode(xmldoc.documentElement)

将此示例输入为 test_file.xml:

<a>
<b>testing 1</b>
<c>testing 2</c>
</a>

产生这个输出:

<DOM Element: a at 0xbc56e8>
<DOM Text node "u'\n '">
<DOM Element: b at 0xbc5788>
<DOM Text node "u'testing 1'">
<DOM Text node "u'\n '">
<DOM Element: c at 0xbc5828>
<DOM Text node "u'testing 2'">
<DOM Text node "u'\n'">

注意事项:

  • 正如@LukeWoodward 提到的,避免使用基于 DOM 的库来处理大量输入,但是 180K 应该没问题。对于 180M,控制可能永远不会从 minidom.parse() 中返回,除非先用完内存 (MemoryError)。
  • 如@alecxe 所述,您应该删除文件规范中无关的“:”。您应该已经看到沿 IOError: [Errno 22] invalid mode ('r') or filename: 'C::/test_file.xml' 行的错误输出。
  • 如@mzjn 所述,xml.dom.minidom.Document 不可迭代。您应该已经看到沿 TypeError: iteration over non-sequence 行的错误输出。

关于Python XML 文件打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18834393/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com