Python: "ImportError: no module named xlrd" after installing xlrd using pip

Python: "ImportError: no module named xlrd" after installing xlrd using pip

使用 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)。

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

中安装

你可以试试这个:

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 安装的第一个包,我假设那里的一切都是正确的),则可能是权限问题。请检查其他一些 Whosebug 问题:

Cannot import a python module that is definitely installed (mechanize)

如果安装包时仅使用 root 的 rw 权限 - 情况就是如此。

我通过升级 pip 并按照 Bibek Ghimire 的回答解决了这个问题。看来我用的是pip版本9,而版本18已经实现了。

pip list

pip install xlrd


pip install xlrd == 1.2.0

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

import xlrd

现在完成了!