【问题标题】:Is path broken for anaconda ipython?anaconda ipython 的路径是否中断?
【发布时间】:2014-01-23 22:37:50
【问题描述】:

我希望使用 ipython 的 anaconda 发行版,但在终端输入 ipython 会产生错误消息:

Traceback (most recent call last):
  File "/usr/local/bin/ipython", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2603, in <module>
    working_set.require(__requires__)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 666, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 565, in resolve
    raise DistributionNotFound(req)  # XXX put more info here
pkg_resources.DistributionNotFound: ipython==0.13.1

如下所示将 PATH 添加到 .bash_profile 会产生相同的错误消息。询问which python 产生//anaconda/bin/python,而which ipython 产生/usr/local/bin/ipython。我该如何解决这个问题,以便ipython 启动 anaconda ipython?

# MacPorts Installer addition on 2012-11-03_at_23:50:01: adding an appropriate PATH variable for use with MacPorts.
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
# Finished adapting your PATH environment variable for use with MacPorts.
# Add colors to terminal
export CLICOLOR=1
export LSCOLORS=ExFxBxDxCxegedabagacad

# added by Anaconda 1.6.1 installer
export PATH="//anaconda/bin:$PATH"
export PATH=/anaconda//bin/isympy:$PATH

# added to Homebrew: bad command
export PATH=/usr/local/bin:$PATH

更新:我按照建议使用 conda update 更新了 anaconda 和 ipython,但仍然收到相同的错误消息。

更新 2:感谢所有建议。我修改/usr/local/bin/ipython如下:

#!//anaconda/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'ipython==1.1.0','console_scripts','ipython'
__requires__ = 'ipython==1.1.0'
import sys
from pkg_resources import load_entry_point

sys.exit(
   load_entry_point('ipython==1.1.0', 'console_scripts', 'ipython')()
)

现在which ipython 生成 //anaconda/bin/ipython,ipython 启动。

【问题讨论】:

  • 你设置了PYTHONPATH 环境变量吗?

标签: python bash ipython anaconda


【解决方案1】:

对我来说略有不同,因为即使安装了 Anaconda 也无法找到命令或运行 ipython 并且无法找到 PATH。 我的解决方案是运行这些命令:

nano ~/.bash_profile
export PATH="/anaconda3/bin:$PATH"
source ~/.bash_profile

然后检查 conda 版本:

conda

我更新 conda 和 ipython 运行:

conda update conda
conda update ipython

希望这可以帮助某人。 这对我有帮助:https://stackoverflow.com/a/49925193/3351569

【讨论】:

    【解决方案2】:

    确保检查脚本开头指定的 Python 可执行文件的路径。当我安装 iPython 时,它被定义为:

    #!/usr/bin/python
    

    代替:

    #!/usr/local/bin/python
    

    因此使用的是 Python 的默认 OS X 安装版本,而不是我的 brew 安装版本。

    【讨论】:

      【解决方案3】:

      您的问题出在您的 $PATH 中。如果您查看您的回溯,它正在运行 /usr/local/bin/ipython - 这是由 Homebrew 安装的,而不是由 Anaconda 安装的。 (Anaconda 将所有内容安装到 /anaconda/bin 中。)

      之所以被选中,是因为 .bash_profile 的最后一行将 /usr/local/bin 粘贴在路径的前面。这意味着您通过 Homebrew 安装的 ipython 掩盖了由 Anaconda 安装的 ipython。

      你有两个选择:

      1. 卸载 Homebrew 安装的 ipython,然后将 Anaconda 用于您的 Python 包。

      2. 在您的 .bash_profile 中,将 Homebrew PATH 修改行移到 Anaconda 上面。这样,Anaconda 的 ipython、python 和其他各种 Python 命令将优先。

      请记住,如果您更改了 .bash_profile,则需要关闭终端并启动一个新终端才能使更改生效。

      【讨论】:

        【解决方案4】:

        一个可能的原因是安装了多个 ipython 版本,例如,brew 可能安装到 /usr/local/binconda 可能安装到 /anaconda/bin(这只是猜测)。 similar issue 的建议是完全删除所有 ipython 安装并安装您将使用的那个。

        【讨论】:

          【解决方案5】:

          看起来你的路径完全没问题。请注意,错误来自“/usr/local/bin/ipython”。这不是 bash 错误,更可能是涉及 setup_tools 或 pip 的错误,即 Python 打包工具。 Bash 找到 ipython 并执行 ipython 启动文件,但在那里遇到错误。

          错误似乎是说您的 ipython 版本不兼容。你试过做这样的事情吗?

           conda update conda
           conda update ipython
          

          建议在iPython documentation 中更新 conda 和 ipython。也许这会解决问题。如果没有,请添加一条信息,说明您在问题中更新了 conda 和 ipython。

          【讨论】:

            猜你喜欢
            • 2017-12-24
            • 2014-03-15
            • 2018-05-15
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-02-24
            • 2018-06-26
            • 2016-03-05
            相关资源
            最近更新 更多