Python prettytable没有模块,但模块是

时间:2017-08-10 15:50:57

标签: python-3.x pip prettytable

我正在尝试运行DrQa形式的facebook研究,可在https://github.com/facebookresearch/DrQA获得。其中一个要求很不错。我在安装它时遇到问题,并遵循Can't install prettytable

pip3 install https://pypi.python.org/packages/source/P/PrettyTable/prettytable-0.7.2.tar.bz2

现在我有以下内容:

$ ls -l /usr/lib/python3.5/site-packages
total 1896
drwxr-xr-x  2 root root    4096 Aug 10 17:04 prettytable-0.7.2.dist-info
-rwxr-xr-x  1 root root   54204 Aug 10 17:04 prettytable.py
drwxr-xr-x 22 root root    4096 Aug 10 17:04 scipy
drwxr-xr-x  2 root root    4096 Aug 10 17:04 scipy-0.19.1.dist-info
[truncated] 

尝试使用它:

$ python3 scripts/pipeline/interactive.py  
Traceback (most recent call last):
  File "scripts/pipeline/interactive.py", line 12, in <module>
    import prettytable
ImportError: No module named 'prettytable'

我觉得我仍然需要安装模块(这在链接中提到,但我也从scipy中得到怀疑,没有.py,虽然很好),但我不知道如何。有什么提示吗?

注意:我一直使用python2.7。这是第一次使用python3,并且第一次使用虚拟环境。我很可能在这里犯了一个错误。

注意2:我在prettytable.py上执行了chmod + x,并尝试使用sudo运行interactive.py,以检查权限问题。

1 个答案:

答案 0 :(得分:2)

你遗漏了很多重要的信息,所以我让我猜。您在全局安装了prettytable(在激活虚拟环境之前),但在激活之后运行python3 scripts/pipeline/interactive.py,对吗?

虚拟环境旨在分离已安装软件包的组,因此默认情况下,全局软件包在虚拟环境中不可用。您必须在虚拟环境中安装prettytable:

source venv/bin/activate
pip install https://pypi.python.org/packages/source/P/PrettyTable/prettytable-0.7.2.tar.bz2

或者您必须使用选项--system-site-packages重新创建虚拟环境。或者使用toggleglobalsitepackages中的命令virtualenvwrapper