Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法升级mac osx 10.10.2中的python six软件包_Python_Macos_Pip_Six - Fatal编程技术网

无法升级mac osx 10.10.2中的python six软件包

无法升级mac osx 10.10.2中的python six软件包,python,macos,pip,six,Python,Macos,Pip,Six,我正在尝试安装最新版本的six python包,但我有以下问题。无法摆脱mac OSX 10.10.2中的六个1.4.1 sudo pip install six --upgrade Requirement already up-to-date: six in /Library/Python/2.7/site-packages Cleaning up... pip search six six - Python 2 and 3 compatibility utilities INSTALLED

我正在尝试安装最新版本的six python包,但我有以下问题。无法摆脱mac OSX 10.10.2中的六个1.4.1

sudo pip install six --upgrade
Requirement already up-to-date: six in /Library/Python/2.7/site-packages
Cleaning up...

pip search six
six - Python 2 and 3 compatibility utilities
INSTALLED: 1.9.0 (latest)

python -c "import six; print six.version"
1.4.1

which -a python
/usr/bin/python
which -a pip
/usr/local/bin/pip

这里怎么了?不能升级六

您的
pip
二进制文件属于
/usr/local/bin/python
,而
python
指向
/usr/bin/python
。因此

pip install --upgrade six
将安装到
/usr/local/bin/python

下面的命令将确保使用正确版本的pip:

python -m pip install --upgrade six

MacOSX的默认python是作为框架安装的。 在framework目录下,有一个'Extras'目录,
six
包已经放在那里了

/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/Python/six.py

根据描述(),
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras
列在模块搜索路径中的
/Library/Python/2.7/site packages
之前。 这意味着
/System/Library/Frameworks/Python中已经存在所有包。framework/Versions/2.7/Extras
无法升级

也许你应该手动安装python,而不是使用默认的python。

对我来说,只是使用固定的一切

brew install python

我在使用pip安装openstack客户端时遇到了这个问题。我的修复方法是使用easy_install而不是pip,因为它使用
/Library/Python/2.7/site packages/
进行模块安装,而不是
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras
。如果此解决方案不适用于您,那么我可以确认@Masakazu Matsushita具有将
PYTHONPATH
设置为
/Library/Python/2.7/site packages
的正确解决方案。要实现该解决方案,请添加以下行:

export PYTHON_PATH=/Library/Python/2.7/site-packages

对于您的
~/.bashrc
~/.profile
(如果您正在尝试安装一个GUI Python应用程序)。

虽然上面的一个或另一个解决方案可能适合您,但我认为了解正在发生的事情以及您有哪些选项很重要。我发现(相当长的)描述非常有用:它从概述选项开始,然后才建议解决方案。

尝试以下步骤

  • 使用brew重新安装python

    $brew安装python

  • 解决缺少符号链接的问题

    $brew链接--覆盖python

  • 重新启动系统或运行

    $hash-r python


  • 我用下面的方法解决了这个问题

  • 下载six-1.10.0.tar.gz包
  • 使用此命令安装它
  • python setup.py安装


    这是因为它安装了新版本的six到/Library/Python/2.7/site-packages/,在/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/Python/之前搜索该软件包

    easy_install -U six
    

    Easy_install甚至在pip失败时也成功地升级了包。

    最后,我的问题是我使用的是IPython外壳

    哪个ipython
    返回了
    /usr/local/bin/ipython
    ,检查后,该文件在顶部声明了
    #/usr/bin/python
    ,这似乎在规避我使用正确python位置的所有努力


    只需更改此行
    #/usr/local/bin/python
    指向正确的python版本,这意味着IPython使用了正确的
    six
    模块。

    请为我试用pip2
    pip2安装-U six

    尝试卸载six:
    pip卸载six
    。然后进行安装。似乎
    python
    pip
    不属于同一个解释器。尝试
    python-mpip安装——改为升级六个
    。如果这不利于考虑添加<代码>的输出- Python < /C>和 > PIP < /代码>。“丹尼尔罗斯曼不,我不在VielalEnV。这是我主要切换到节点和NPM的原因之一。Python依赖项存在这些问题。另一个解决方案是设置
    PYTHONPATH
    export PYTHONPATH=/Library/Python/2.7/site packages
    。在
    PYTHONPATH
    中指定的所有路径的优先级都高于OS X framework python库。这对我来说很有效:python-m pip install——升级sixMy six不会更新,因为我库中的缓存库没有正确的权限/所有权(根据pip)@roopalgarg的解决方案也适用于我(osx 10.11)。谢谢这对我没用。。仍然出现相同的错误,无法升级框架包。作为一个新手,我能找到一个循序渐进的方法来解决这个问题吗?我已经安装了python 3和python 2。这可能是个问题吗?我使用mac os x 10.11.1。你的回答对我有帮助。我正在使用Mac os x 10.10.5我做了更改,但仍然收到相同的错误消息。。我在10点11分。1@Raghav,最好是准确地记录您所做的事情和遇到的错误,然后开始一个新的问题,该问题链接到我的答案。尝试升级six是目标,显然,它是系统包的一部分,下面是消息-----------------OSError:[Errno 1]不允许操作:'/var/folders/98/kcksn_cn7619mkjsmlgqt8lc0000gn/T/pip mSyToD uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/Python/six-1.4.1-py2.7.egg info'------------我有相同的规范,-->$which-a pip==>/Library/Frameworks/Python.framework/Versions/3.4/bin/pip==>/usr/local/bin/pip-->$which-a Python====>/usr/bin/pythonCleanest解决方案,如果您想保持OS X Python的完整性,这应该是最好的答案。快点。Six Package 1.11.0 link=>[等等,这是PYTHONPATH还是PYTHON_PATH?太棒了。这类事情让我想知道为什么我要用计算机来完成这些任务