找不到“六”,但已安装

Posted

技术标签:

【中文标题】找不到“六”,但已安装【英文标题】:Can't find "six", but it's installed 【发布时间】:2014-09-30 20:37:18 【问题描述】:

我已经安装了six(甚至重新安装了它)。

$ pip show six
---
Name: six
Version: 1.7.3
Location: /usr/lib/python2.6/site-packages
Requires: 

但是当我尝试运行csvcut时,却找不到。

$ csvcut -n monster.csv
Traceback (most recent call last):
  File "/usr/bin/csvcut", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 2655, in <module>
    working_set.require(__requires__)
  File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 648, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 546, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: six>=1.6.1

这是csvcut的相关内容:

#!/usr/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'csvkit==0.8.0','console_scripts','csvcut'
__requires__ = 'csvkit==0.8.0'
import sys
from pkg_resources import load_entry_point

if __name__ == '__main__':
    sys.exit(
        load_entry_point('csvkit==0.8.0', 'console_scripts', 'csvcut')()
    )

这是在 CentOS 上。

【问题讨论】:

【参考方案1】:

使用 pip 卸载并重新安装 six 没有工作

sudo pip uninstall six
sudo pip install six

但是,我能够使用 easy_install 解决问题:

easy_install --upgrade six

【讨论】:

我在使用 amazon Web 服务 (aws) 命令行工具时遇到问题,并且发现六个错误。这个解决方案奏效了……不知何故。这是一个错误吗?这个解决方案实际上是如何工作的? 注意:如果使用 virtual-env,请不要使用“sudo pip ...”。我刚刚犯了这个错误。它突破了虚拟环境:将“which pip”与“sudo which pip”进行比较。【参考方案2】:

原因是当您使用 PIP 安装 Six 时,Six 库的位置未添加到 Pythons 路径中,因此在尝试使用命令时,python 无法找到它们。使用 Easy_Install 安装没有这个问题,当它安装六个时它会自动更新 python 路径变量,以便 python 可以找到该库。

如之前回答的那样通过 Easy_Install 安装可解决此问题,但您也可以将位置添加到 python 路径变量中。

【讨论】:

【参考方案3】:

我今天遇到了同样的问题,用 pip 重新安装没有用,我不能用 easy_install 来做,因为它是一个自定义包 解决方案是将 PYTHONPATH 变量指向包含包的 site-packages

export PYTHONPATH=$PYTHONPATH:/path/to/sites-package

如果你使用虚拟环境,你会遇到这个问题

【讨论】:

以上是关于找不到“六”,但已安装的主要内容,如果未能解决你的问题,请参考以下文章

找不到 Py.test 命令,但已安装库

Ubuntu中找不到yum及安装方法

部署到 Azure 应用服务后找不到我的 repo 文件

project安装程序找不到任何可安装的产品

matlab安装,找不到指定模块,程序

mac安装包安装好的软件怎么找不到?