我只是想解析一个 XML 文件:
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
但这给了我:
import xml.etree.ElementTree as ET
ImportError: No module named 'xml.etree'
我正在使用 Python 3.5。我曾尝试使用 Python 2.7 和 3.4 编写相同的代码,但我总是遇到此错误。我认为 XML 库是标准的。另外,我可以在我的 Lib 文件夹中看到:
那么为什么它不能拾取模块呢?我真的很困惑。我是否必须在某处对环境变量进行一些更改?
请帮忙。
原文由 AbtPst 发布,翻译遵循 CC BY-SA 4.0 许可协议
从当前目录中删除文件
xml.py
或目录xml
中的文件__init__.py
试。导入模块时,Python 会先搜索当前目录。当前目录中名为 — 的文件或名为xml.py
的包xml
了具有相同名称的标准库包。正如 KeshV 在评论中指出的那样,您还需要删除文件
xml.pyc
,如果它存在的话。在 Python 2 中,它将与xml.py
位于同一目录中。在 Python 3 中,它将位于子目录__pycache__
中。一般来说,只要*.py
文件在附近,你就可以安全地删除相应的*.pyc
文件,因为Python会在导入*.py
时重新创建它文件。