在 Mac 上的 Anaconda 上安装 python 库

问题描述

抱歉,我对 Python 很陌生,这可能是一个愚蠢的问题。

我已经在 Mac 上安装了 Anaconda,并且一直在使用像 Pandas 这样的基础库。当我尝试在 Ipython 上使用:pip install oauthlib 安装 oauthlib 库时,出现错误pip 只能安装在 Ipython 之外。 现在我去mac终端,运行pip3 install oauthlib,它似乎已经安装了它。但是,当我从 spyder(在 anaconda 中)运行我的代码时。我收到错误没有模块名称'oauthlib'

这是怎么回事?我的代码是否在 anaconda 中运行,并且安装了另一个 python 软件?

解决方法

确保在用于项目的 conda 环境中安装 oauthlib。在终端中执行以下操作:

  1. 首先创建环境:conda create --name myenv
  2. 接下来,激活环境:conda activate myenv
  3. 最后,安装 oauth:pip3 install oauthlib

然后确保您的 IDE 使用正确的 conda 环境。祝你好运!

,

Anaconda 的工作方式类似于容器化环境(虚拟环境),它维护自己的库版本和安装的 Python 版本。

如果您在 Mac/Linux 终端上安装了一个 python 库(没有运行“conda activate base”),那么它会将其安装到 Mac 上安装的 Python 本机版本,而不是安装在 Anaconda 上。

如果您希望在本地/Mac 版本的 Python 上运行代码,请转到终端并输入:

pip install oauthlib

然后在终端上运行 python 代码而不切换到 Anaconda(因为 Anaconda 似乎给出了错误)

如果命令“conda”不起作用,运行 conda init 并再次关闭和打开终端应该可以解决问题。

如果它不起作用,您需要找出终端正在使用的 SHELL:

echo $(which SHELL)

输出应该是这样的

/usr/bin/zsh

如果是 zsh,则将其放入以下 ​​zshrc 中,如果是 bash,则其 bashrc 存在于主目录中。

nano ~/.zshrc
or
nano ~/.bashrc

并将其粘贴到文件末尾

# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/bitsage/anaconda3/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/home/bitsage/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/home/bitsage/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/home/bitsage/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<
,

如果您使用的是 mac,它应该已经安装了...如果没有,请尝试在您的命令提示符中写入:

python get-pip.py