Pip 在错误的目录中安装包

问题描述 投票:0回答:2

所以我想安装opencv-python包。我输入 pip install opencv-python 并得到这个:

Collecting opencv-python
  Downloading opencv_python-4.7.0.72-cp37-abi3-win_amd64.whl (38.2 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 38.2/38.2 MB 3.1 MB/s eta 0:00:00
Requirement already satisfied: numpy>=1.17.0 in c:\users\leo westerburg burr\appdata\local\packages\pythonsoftwarefoundation.python.3.9_qbz5n2kfra8p0\localcache\local-packages\python39\site-packages (from opencv-python) (1.24.2)
Installing collected packages: opencv-python
Successfully installed opencv-python-4.7.0.72

当我尝试导入包(在 IDLE 上)时,我得到了

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    import cv2
ModuleNotFoundError: No module named 'cv2'

我最近安装的所有包都是一样的,比如numpy。问题是当我在 IDLE 中输入

sys.path
时我得到

C:\Users\Leo Westerburg Burr\AppData\Local\Programs\Python\Python311\Lib\idlelib
C:\Users\Leo Westerburg Burr\AppData\Local\Programs\Python\Python311\python311.zip
C:\Users\Leo Westerburg Burr\AppData\Local\Programs\Python\Python311\DLLs
C:\Users\Leo Westerburg Burr\AppData\Local\Programs\Python\Python311\Lib
C:\Users\Leo Westerburg Burr\AppData\Local\Programs\Python\Python311
C:\Users\Leo Westerburg Burr\AppData\Local\Programs\Python\Python311\Lib\site-packages

它们都在

AppData/Local/Programs
目录中,但是包存储在
appdata\local\packages\pythonsoftwarefoundation.python.3.9_qbz5n2kfra8p0\...
中,正如我在安装 opencv-python 时看到的那样——我觉得这很奇怪;为什么它们安装在那里而不是
programs\python

我试过重新安装 pip,还下载了更新版本的 python。奇怪的是我的 Python 文件夹中有 Python311 和 Python38,但是这个包含包的奇怪文件夹是 python39?

所以我的问题是:如何让 pip 在

Programs\Python\Python311\...
中安装软件包,而不是
Packages\...

我必须在我的 PATH 中添加一些东西吗?

python pip python-module python-packaging pythonpath
2个回答
2
投票

你需要使用

python -m pip install
。为什么?
pip
是一个可执行文件,它可能会或可能不会与您的标准
python
共享安装目录。您可以通过比较来验证这一点:

pip -V

python -m pip -V

后一个命令

python -m pip install
确保
pip
是链接到您为 IDLE 运行的
python
命令的命令。


0
投票

看来你同时安装了python3.9和3.11。当只输入

pip install ...
时,你可能在python 3.9中安装你的包,而你在IDLE中运行python 3.11。

在命令提示符中尝试

python -V
,它可能会回答 python3.11

© www.soinside.com 2019 - 2024. All rights reserved.