【问题标题】:Configuring root path in Anaconda python在 Anaconda python 中配置根路径
【发布时间】:2016-01-13 01:14:40
【问题描述】:

我在/opt/anaconda3/ 中安装了 Anaconda 3,在/opt/gurobi650/ 中安装了 Gurobi 优化软件。在使用import gurobipy 命令启动/opt/anaconda3/bin/python(即Anaconda python - 不是系统python)后,我希望能够加载Gurobi 库。目前,anaconda python 不作为代码在那里搜索

import sys
sys.path

suggests - 它返回 anaconda 目录中的库列表。但是,import gurobipy 命令与 /usr/bin/python 一起使用 - 因为它使用 PATH 环境变量。

我意识到我可以将 Gurobi 目录附加到 sys.path,但我想更改 Anaconda 的根 sys.path,因为默认情况下应该可以访问该库。

在正常的系统环境中,只需使用/etc/profile.d/ 中的文件更改 PATH 和 LD_LIBRARY_PATH 环境变量即可。使用 Anaconda python 的类似解决方案是什么?

编辑:要导入 gurobipy,实际上需要将 /usr/local/lib/python3.4/dist-packages 添加到 sys.path,而不是 /opt/gurobi650 目录中的任何内容。

编辑:这是在 Linux (Ubuntu 14.04) 上。

【问题讨论】:

  • 所以你没有在这个自定义 Python 中安装这个扩展并且你想伪造它?
  • 假设您所说的“将扩展安装到自定义 python”的意思是通过渠道安装 gurobi anaconda 包,那么答案是否定的,我没有这样做,是的,我确实想要假装。我确实尝试了 conda gurobi 包,但我遇到了问题,考虑到这似乎是一个相当简单的问题,我希望会有一个相当简单的答案(不幸的是,谷歌没有提供:()
  • 我认为您想安装一个针对您想要使用的任何自定义 python 编译的包。所以这意味着找出所有关于 conda gurobi 环境是如何构建的,包括从源代码安装它,以及构建它所使用的所有工具,你没有说明你是否在 Linux 上,但你的路径 /usr 告诉我你不在 Windows 上。如果您是 C 开发人员,您应该从源代码构建 gurobi 的东西。如果你不是,你可能无法做到这一点。简单取决于您的 C/unix 技能水平。
  • 已标记问题 Linux,因为您的问题在 windows 上的 anaconda 上毫无意义。

标签: python linux anaconda python-import sys


【解决方案1】:

您可以随时将其添加到环境变量PYTHONPATH,它将添加到sys.path

export PYTHONPATH=/opt/gurobi650/

在使用 Anaconda 的 Python 时,将 /usr/local/lib/python3.4/dist-packages 添加到您的 sys.path 是一种技巧。 Anaconda 发行版与 OS 版本不同,可能会让您有些头疼。

【讨论】:

  • 这假定 /opt/gurobi650 中的任何 python 扩展都与该自定义 python 二进制兼容,但它可能不兼容。假设两者都是python3.4。让我们希望它们与 ABI 兼容,但也许它们不是。它们不兼容二进制文件的可能性约为 90%。
  • 在 Windows 上绝对不兼容二进制的相关问题。不确定Linux。 stackoverflow.com/questions/25228687/…
猜你喜欢
  • 1970-01-01
  • 2014-08-06
  • 2014-09-26
  • 2012-07-29
  • 2018-06-26
  • 2017-01-19
  • 2020-12-15
  • 2019-03-09
  • 2018-07-22
相关资源
最近更新 更多