Python 3.x 为什么pip要为另一个具有不同python版本的venv重新下载相同的包?

Python 3.x 为什么pip要为另一个具有不同python版本的venv重新下载相同的包?,python-3.x,pip,virtualenv,conda,python-venv,Python 3.x,Pip,Virtualenv,Conda,Python Venv,我有两个虚拟环境。一个是python 3.7.9。另一组为3.8.5。我已经在第一个虚拟环境中下载了torch 1.6.0。但是当尝试在第二个虚拟环境中安装相同的torch版本时,它会再次下载整个软件包,而不是从缓存中安装 有没有办法强制从缓存下载,因为我希望在这两种环境中都使用相同的torch==1.6.0,而且每次下载都会让人沮丧。看看列出的文件 不同的Python版本有不同的控制盘 这是有道理的,例如Python版本之间的语法会发生变化。看来torch已经改变了。实际上,不能对这两种环境

我有两个虚拟环境。一个是python 3.7.9。另一组为3.8.5。我已经在第一个虚拟环境中下载了torch 1.6.0。但是当尝试在第二个虚拟环境中安装相同的torch版本时,它会再次下载整个软件包,而不是从缓存中安装


有没有办法强制从缓存下载,因为我希望在这两种环境中都使用相同的torch==1.6.0,而且每次下载都会让人沮丧。

看看列出的文件

不同的Python版本有不同的控制盘


这是有道理的,例如Python版本之间的语法会发生变化。

看来torch已经改变了。实际上,不能对这两种环境使用相同的版本。如果库包含C扩展(pytorch也包含),那么这些扩展通常只与一个主要的Python版本兼容(因此ABI标记
cp37-cp37m
等)。如果库仅使用有限的API部件(在中定义),控制盘可能会声明不同主要版本之间的兼容性(通常通过在ABI标记中定义支持的最低版本和更高版本来表示,例如
cp36-abi3
),但pytorch不是其中之一。