【问题标题】:copying modules from python 3.10 to 3.11将模块从 python 3.10 复制到 3.11
【发布时间】:2022-11-03 02:41:26
【问题描述】:

所以基本上我安装了 3.11(这是最新版本)。但是当我执行 exe 文件时,它说“立即安装”而不是“立即更新”(我在从 3.10.5 更新到 3.10.8 时看到。现在安装将创建一个全新的目录,我所有的重要模块都在dir“python3.10”,我懒得将每个模块“pip install”到新目录。所以有什么办法可以在不创建全新目录且不单独安装所有模块的情况下更新到 3.11 ?

【问题讨论】:

  • 模块可以包含本机代码,并且始终针对特定的 Python 版本进行编译,因此模块安装在名称中包含该版本的目录中。您不能简单地移动模块并期望它们工作,尽管仅 Python 的模块可能会工作。如 DeepSpace 的回答所示,冻结旧版本的模块并通过新版本的需求机制批量安装它们是可行的方法。

标签: python module pip


【解决方案1】:

假设两个解释器都是全局可用的,例如 python3.10python3.11

使用pip freeze 获取安装在 3.10 解释器上的所有模块的列表,然后使用 3.11 的pip 安装它们:

python3.10 -m pip freeze > requirements.txt
python3.11 -m pip install -r requirements.txt

当然,这是否成功取决于每个模块对 Python 3.11 的可用性/支持。

手动复制网站包不建议使用不同解释器的目录,只是在以后询问问题.

【讨论】:

    【解决方案2】:

    实际上在安装模块时它使用预下载的版本,这意味着它不会再次下载它们,直到您使用 --no-cache-dir 询问:)

    【讨论】:

      猜你喜欢
      • 2023-01-20
      • 2022-11-30
      • 1970-01-01
      • 2023-01-12
      • 2022-12-15
      • 2010-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多