首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在windows中将python升级到3.10;是否必须手动重新安装所有站点包?

在windows中将python升级到3.10;是否必须手动重新安装所有站点包?
EN

Stack Overflow用户
提问于 2022-02-09 10:54:29
回答 2查看 6.4K关注 0票数 6

我在windows 10 64位安装了python3.9和站点包。我希望在windows 1064位上安装python 3.10.2,并在python 3.10.2中找到一种自动安装软件包的方法,与我目前在python 3.9中安装的包相同。我也对windows 11 64位的这个问题的答案感兴趣。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-02-09 10:54:29

我在windows 1064位中升级到python 3.10.2。若要正确安装软件包,请在必要时安装相应版本的MicrosoftVisualC++编译器。详细信息可以阅读https://wiki.python.org/moin/WindowsCompilers。在从3.9升级到python 3.10.2之后,我不得不这样做,因为在安装包时出现了错误。在安装python 3.10.2之前,在windows命令提示符中键入并执行以下命令:

代码语言:javascript
复制
pip freeze > reqs.txt

此命令将适合于pip的版本中所有已安装包的名称写入reqs.txt文件。如果以管理员权限运行命令提示符,则reqs.txt文件将保存在目录C:\WINDOWS\system32中。

然后,在安装python 3.10.2并将其添加到PATH中的路径之后,在命令提示符的帮助下,您需要发出命令:

代码语言:javascript
复制
pip install -r reqs.txt

这将开始安装与python3.9相同版本的软件包。如果出现问题,例如在安装lxml期间出现安装错误,则可以从regs.txt文件中删除带有安装导致问题的包的名称的条目,然后手动安装。要编辑reqs.txt文件,需要管理员权限。最简单的方法是在管理员模式下运行命令提示符,输入reqs.txt并单击Enter来编辑它。

后来,我决定将丢失的包更新为最新版本,因为我怀疑python 3.10.2旧版本不兼容。这意味着,当升级到python 3.10.2时,值得问自己是否最好对所有包进行升级。为此,可以使用以下命令生成过期包的列表:

代码语言:javascript
复制
pip list –-outdated

在命令提示符中打印列表之后,可以使用以下命令升级过时的包:

代码语言:javascript
复制
pip install --upgrade <package-name>

这可以通过编辑reqs.txt文件和将标记==改为>来实现自动化,这将加快升级速度。标记>只应更改过时的包,否则您将得到一个错误:“未能找到满足要求的版本.”。

虚拟环境的补充:

当您输入虚拟环境目录(在windows命令提示符中):(如D:\python_projects\data_visualization\env\Scripts )时,键入activate以激活它。然后创建类似于上面描述的reqs.txt文件。然后,将文件复制到临时目录。在此之后,删除虚拟环境,例如,通过删除env目录的内容使用windows探索者。然后,在我们选择的窗口中使用python的版本,使用env目录创建一个虚拟环境(参见:https://docs.python.org/3/library/venv.html)。将regs.txt文件复制到新创建的D:\python_projects\data_visualization\env\Scripts目录中。安装站点-支持regs.txt文件的软件包,如上文所述。

票数 5
EN

Stack Overflow用户

发布于 2022-05-22 14:10:18

不,不需要重新安装python包。

conda create --name project-env python=3.x

您还可以查看安装python版本安装python版本的替代方法。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71048280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档