如何将所有模块移动到新版本的 Python(从 3.6 到 3.7)

新手上路,请多包涵

我刚刚升级到 python 3.7 我意识到我的所有模块都停留在以前的版本上。连 Django 都认不出来了。我该怎么做才能将所有内容转移到新版本?我现在有点迷茫,甚至不知道新版本安装在哪里。

编辑:

当我做 $ which python3.6 终端告诉我它不存在,但我有一个 python3.6 目录在 /usr/local/lib/ 中,其中安装了所有模块

在同一目录 /usr/local/lib/ 我还有一个 python3.7 目录,其中安装了一些模块,但很多都丢失了。但是,当我在查找器中搜索文件 python3.7 时,它没有出现。当我做 $ which python3.7 路径是 /usr/local/bin 所以与目录的路径不同。

任何人都看到发生了什么并且知道我如何将所有模块转移到 python3.7

原文由 NicoBar 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1k
2 个回答

即使旧的 python 版本已被删除,也可以使用当前 python 版本的 pip 和 --path 选项来列出以前版本中安装的所有模块。

例如,将我所有用户安装的 python 模块从 3.7 迁移到 3.8

 pip freeze --path ~/.local/lib/python3.7/site-packages > requirements.txt
pip install --user -r requirements.txt

顺便说一下,我总是使用 pip install--user 并将系统范围的安装留给我的 linux 发行版的包管理器。

原文由 Prof. Jayanth R Varma 发布,翻译遵循 CC BY-SA 4.0 许可协议

由于可能的兼容性问题,重新安装所有软件包更安全:

 pip3.6 list | awk '{print $1}' | xargs -I{} pip3.7 install {}

原文由 Tianyi Shi 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题