使用.py文件时lxml出现问题、在解释器中正常工作

0 投票
2 回答
1357 浏览
提问于 2025-04-16 08:05

我在我的Snow Leopard上安装了python.org的2.7版本,同时也有一个苹果自带的2.6版本的Python。我用命令'sudo pip install lxml'安装了lxml库。我确保是在python.org的2.7版本的bin目录下执行这个命令的。

当我在IDLE解释器里输入以下命令:

from lxml import etree

一切都正常,我可以使用所有lxml的方法。但是如果我创建一个.py文件,里面只有一行:

from lxml import etree

然后我尝试运行这个文件(无论是在IDLE中按RUN/F5,还是通过命令行'$python testlxml.py'),我就会收到一个错误:ImportError: cannot import name etree

如果我尝试导入其他lxml模块,比如'from lxml import html',在解释器里可以正常工作,但在.py文件里就不行。我在网上查了很多,但找不到这个具体问题的解决办法。有人知道怎么回事吗?谢谢!

2 个回答

1

他们正在使用哪个解释器呢?

确保你的 Python 文件的第一行是:

#!/full/path/to/python2.7
2

最后我搞明白了。原来在我的路径中有一个叫做 lxml.py 的文件,但它并不是 lxml 这个模块。实际上,我几天前在玩 lxml 教程的时候自己创建了这个文件,但当时没有注意到文件名的重复。我完全忘记了这件事。真是太笨了。

撰写回答