【发布时间】:2021-11-21 16:24:03
【问题描述】:
首先:我知道任何想要帮助的人都会要求提供演示错误的代码。这将需要项目的 ZIP,而且我看不到如何将文件附加到 StackOverflow 问题。当有人告诉我如何上传文件时,我会很乐意上传。
这是“我没有改变任何东西,但它坏了”的事情之一。环境为 Windows 10、Python 3.8 和 PyCharm 2019.3.5。
几周前,我将项目置于完全调试的状态。今天我添加了一个函数定义和一个对它的调用。现在程序在尝试为 XML 树创建解析器时失败了……在调用新函数之前。
在脚本的开头,我从 xml 导入 etree:
from xml import etree
在失败点我尝试创建一个解析器:
_parser = etree.ElementTree.XMLParser(encoding="iso-8859-1")
我收到的消息是:
Connected to pydev debugger (build 193.7288.30)
Traceback (most recent call last):
File "C:/Users/... /PartConfig/PartConfig.py", line 47, in <module>
_parser = etree.ElementTree.XMLParser(encoding="iso-8859-1")
AttributeError: module 'xml.etree' has no attribute 'ElementTree'
我有一个“except”块,但它永远不会被执行,因为它的范围是 etree.ElementTree.ParseError。
从表面上看,错误信息是完全错误的。我知道脚本找到了 etree.ElementTree,因为它跑过了 import 语句,当我将模块名称拼错为实验时,它就在那里失败了。 ElementTree 是标准 Python 库中 xml.etree 的一个元素,所以我想不出脚本 可能 失败的方式。消息一定是想告诉我什么,但是什么?
【问题讨论】: