Python Virtualenv在全局目录中安装程序包

Python Virtualenv在全局目录中安装程序包,python,python-3.x,virtualenv,Python,Python 3.x,Virtualenv,我一定要读一些类似的书,但我找不到问题的答案 我的问题是:当我进入muy virtual env并激活它时,如果我在那里安装了一个软件包,它也会安装在我计算机的其他地方 例如,如果我在终端中键入: cd home/Documents/Python/tests/my_virtual_env source bin/activate 这将激活虚拟环境。如果我键入: pip3 install wget #just an example package 我看到了安装过程,可以运行使用wget的.p

我一定要读一些类似的书,但我找不到问题的答案

我的问题是:当我进入muy virtual env并激活它时,如果我在那里安装了一个软件包,它也会安装在我计算机的其他地方

例如,如果我在终端中键入:

cd home/Documents/Python/tests/my_virtual_env
source bin/activate
这将激活虚拟环境。如果我键入:

pip3 install wget  #just an example package 
我看到了安装过程,可以运行使用wget的.py脚本。然而,为什么这个软件包也安装在我的计算机的其他地方

  • 我确保没有使用pip3列表预先安装该软件包
  • 通过从其他目录运行.py脚本(使用cd/etc.etc/更改目录,然后从那里运行),我确认该包安装在其他地方。
  • 我在适当的时候关闭了环境
  • 我还意识到,如果我在virtualenv中卸载该软件包,它也会在其他地方卸载


    非常感谢你的帮助

    可能是正在执行的
    pip3
    命令实际上没有绑定到虚拟环境。因此,您可以执行以下操作,无论虚拟环境是否被激活,这些操作都会起作用:

    $ path/to/my_virtual_env/bin/python3 -m pip install SomeProject
    
    下面的命令应该可以相对清晰地指示项目的确切安装位置,确保它位于虚拟环境的
    站点包
    目录中:

    因此,它应该显示以下内容:

    Name: SomeProject
    ...
    Location: .../path/to/my_virtual_env/lib.python3.X/site-packages
    
    然而,为什么这个软件包也安装在我的计算机的其他地方

    以下显示二进制文件的位置:

    $ which somecommand
    

    应该很容易识别
    somecommand
    是否在Python虚拟环境中。

    当您在其他地方运行它时,您的env是否已停用?运行
    哪个pip3
    以检查您的
    pip3
    是否基于环境。您还应该在提示中看到一个
    (env)
    前缀或类似内容,以验证您的环境是否正确激活。@GoodDecteds:是的,我确保事先键入了“deactivate”。是的,我需要按照您的建议先更改该路径。非常感谢。它现在运行良好:)
    $ which somecommand