Python Conda 环境混乱(例如:健身房的问题)

Python Conda Environment confusion(as example: problem with gym)

尝试使用 gym open-ai 包(和其他一些)我 运行 遇到了一些问题, 我不太了解哪种结构。

举个例子:

我尝试在三种不同的 conda 环境中安装 gym。

一种方法是 pip 安装健身房 另一个是: git 克隆 https://github.com/openai/gym.git CD健身房 pip install -e .

第三个是: pip3 安装健身房 在某些环境中,我会在其他环境中使用 Python2。也许 Python 3.7

更多的安装可能性是:

sudo pip 安装健身房

(甚至更多的排列是可能的,如果我们考虑的话, 如果我们激活一个环境或不激活任何环境)。 对我来说事情变得更加复杂,因为我试图安装 conda Ubuntu 中的非管理员用户帐户,因此 conda(或者更确切地说,用户本身无法在 /usr 目录中安装任何文件)。 我开始测试其中的一些可能性和案例,因为安装了一些库 (例如 keras-rl)似乎需要访问公共资源(/usr/dir.),即使 安装在本地 conda 环境中。但如果是这样:安装在 不同的 conda 环境相互作用? 还有,如果有人在 conda 环境中以本地用户身份安装一个包,并且 然后以管理员身份安装 pip 或 pip3。管理员安装 覆盖(或否决或交互)环境安装(或其中的一部分)?

在尝试不同的可能性时(或更多:在尝试 找到一个没有产生任何错误的安装,如 "gym not found" 或 "attribute error ... " ) 确实发生了如下错误:

Found existing installation: gym 0.15.4
Can't uninstall 'gym'. No files were found to uninstall.

执行后:

sudo pip3 install gym --force

所以在此基础上我的问题具体是:

(1) 是否有建立良好 conda 环境的最佳实践 (它们不倾向于相互作用,特别是如果某些包 需要 sudo 权限)?

并且(2)如果某些环境与 一般(sudo)资源,如何以某种方式解决它们, 不同的环境可以相互测试和建立吗?

注解: 有一个类似的问题: conda environment pip is trying to install dependencies globally 前段时间,但是不使用 sudo 的建议似乎很难遵循, 如果某些包需要访问全局资源。 所以我想更具体一点地请求交互的解决方案。

你不应该使用 sudo 在 conda 环境中安装东西。很可能使用的 pip 命令不是来自实际的(激活的?)环境,而是使用实际的系统范围的 pip。因此,您需要使用 sudo 来安装到系统拥有的前缀。

您可以通过调用 "which pip" 检查您是否正在使用所需的 pip。该路径应指向您的环境。如果没有,您应该在您的 conda 环境中安装 pip。

我之前遇到过同样的问题。我激活了 conda envirement 并在本地安装了 pip3,因为 conda 不支持它。警告:可能会破坏一些包。

conda 环境在安装任何东西之前都应该被激活,否则它最终会成为一个全局安装。

在不使用 sudo 的情况下安装新的 conda 环境。如果它要求 sudo 你需要删除整个东西并清理一下。它很容易忘记并且永远不要使用 sudo !

您可以尝试安装更新版本的 python3.x(python 2 很快就会成为历史,他们说。Pip = python2,pip3 = python 3. 并回答你的一个新问题,如果通过全局安装会搞砸,而不是在 conda 之外。

google pycharm 和康达。在那里你可以用它来安装 3 种不同类型的环境 python。实际上是一个非常好的 python 编码编辑器。当我们谈论清理 PATHS 等时,剩下的更多 linux 相关

我没有更好的补充!希望你做对了。