Python:使用 pip 安装 xlrd 后"ImportError: no module named xlrd"



使用 pip 安装 xlrd 后,我仍然无法让它在我的脚本中工作。我不确定我是否错过了一些完全明显的东西 - 请帮忙!

目前,在命令行上输入pip list会给出以下内容:

pip (9.0.1)
setuptools (32.1.0)
wheel (0.29.0)
xlrd (1.0.0)

进入pip show xlrd会得到:

Name: xlrd
Version: 1.0.0
Summary: Library for developers to extract data from Microsoft Excel (tm) spreadsheet files
Home-page: http://www.python-excel.org/
Author: John Machin
Author-email: sjmachin@lexicon.net
License: BSD
Location: /usr/local/lib/python2.7/site-packages
Requires:

然而,如果我进入 python 环境(通过在命令行上键入 python(并尝试导入,这就是我得到的:

Python 2.7.10 (default, Feb  7 2017, 00:08:15)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import xlrd
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named xlrd

以前有人遇到过这个问题吗?我还安装了python 3,并通过pip3下载了xlrd。然而,import xlrd不适用于任何版本(2 或 3(。

你可以试试这个:

import pip
package_name='xlrd'
pip.main(['install', package_name])

首先,您可以检查给定目录中是否确实存在这样的包(只需ls /usr/local/lib/python2.7/site-packages以查看那里是否有__init__.py(。

如果包已到位,您可以检查环境变量$PYTHONPATH或仅检查 python -c 'import sys; print(sys.path)' ,这会打印 Python 从中获取库的所有目录。

如果一切就绪并且sys.path包含站点包(如果这不是您通过 PIP 安装的第一个包,我假设那里的一切都是正确的(,则可能是权限问题。请检查其他一些堆栈溢出问题:

无法导入已安装的 python 模块(机械化(

如果软件包是在root的rw权限下安装的 - 那就是这种情况。

卸载并安装 xlrd。可能在安装时,您会遇到一些错误。仅当未安装 xlrd 时,才会显示此错误。使用 sudo pip install xlrd 在 python 2.7 中安装

我解决了升级pip并遵循Bibek Ghimire的答案的问题。似乎我使用的是 pip 版本 9,而版本 18 已经实现。

pip list
pip install xlrd

pip install xlrd == 1.2.0

现在转到您的 IDE 并开始键入

import xlrd

现在完成了!

最新更新