【问题标题】:pip installing does not install to virtualenvpip 安装不安装到 virtualenv
【发布时间】:2021-04-20 19:24:15
【问题描述】:

我对这一切都很陌生,所以请耐心等待。

我启动并激活了一个虚拟环境。但是当我 pip install 任何东西时,它会安装到计算机上,而不是虚拟环境中。

我在 Mac 上,正在尝试构建一个 Django 网站。

示例: 激活虚拟机。我输入:

python -m pip install Django

然后我可以停用虚拟环境,然后输入:

pip freeze

它会列出新安装的 Django 版本。

关于为什么会发生这种情况的任何线索?

【问题讨论】:

  • 您是否已经创建了 virtualenv 目录?例如virtualenv venv 其中venv 是虚拟环境?然后source venv/bin/activate
  • 谢谢!我正在使用不同的虚拟环境或其他东西。我 pip 安装了 virtualenv,设置了一个新的 env,激活了它,这似乎有效。
  • 您 pip 安装了 virtualenv,但如果您使用的是 python3,则嵌入了 virtualenv。 python -m venv .venv,其中.venv 是虚拟环境名称。然后,. .venv/bin/activate 你应该准备好pip install ...

标签: python django terminal pip virtualenv


【解决方案1】:

从您的项目文件夹中运行这一行,其中“env”是您的虚拟环境

# A virtualenv's python:
$ env/bin/python -m pip install django

【讨论】:

    【解决方案2】:

    通过检查 Python 解释器的位置来确认你在虚拟环境中,它应该指向 env 目录。

    在 macOS 和 Linux 上:

    which python
    .../env/bin/python
    

    只要您的虚拟环境被激活,pip 就会将包安装到该特定环境中,您就可以在 Python 应用程序中导入和使用包。

    【讨论】:

    • 啊,好吧。我在激活虚拟环境的情况下输入“which python”,然后再次禁用它,它们都有相同的确切路径:'/usr/local/opt/python/libexec/bin/python'
    • 我认为激活 venv 存在一些错误。按照指南packaging.python.org/guides/…。关于正确创建和激活虚拟环境
    • 我最终 pip 安装了 virtualenv,激活了它,这似乎已经成功了。感谢您的帮助!
    • 如果您的问题已解决,请将其标记为已回答:)
    【解决方案3】:

    如果你想安装到你的虚拟环境,你必须激活它,否则它将安装到主文件夹。

    【讨论】:

    • 是的,我确实在安装时激活了它。
    • 控制台底部是否显示(venv) 之类的内容?
    • 是的,激活后,终端中的每一行都以 (env) 开头
    • 表示包将被安装到你的env文件夹,再试一次