11

我已经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 上。

4

3 回答 3

19

使用sixpip卸载和重新安装不起作用

sudo pip uninstall six
sudo pip install six

但是,我能够使用以下方法解决问题easy_install

easy_install --upgrade six
于 2014-08-08T09:47:29.203 回答
1

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

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

于 2016-05-24T16:20:23.427 回答
0

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

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

如果您使用虚拟环境,您将面临这个问题

于 2017-06-20T08:20:45.487 回答