Olg*_*ski 7 python windows pip
我在 Windows 10 64 位中安装了带有站点包的 python 3.9。我想在 windows 10 64 位上安装 python 3.10.2,并找到一种在 python 3.10.2 中自动安装软件包的方法,与我目前在 python 3.9 中安装的软件包相同。我也对 Windows 11 64 位的这个问题的答案感兴趣。
我在 Windows 10 64 位中升级到 python 3.10.2。要正确安装软件包,请根据需要安装适当版本的 Microsoft Visual C++ 编译器。详细信息可以阅读https://wiki.python.org/moin/WindowsCompilers。从 3.9 升级到 python 3.10.2 后,由于安装软件包期间出现错误,我不得不这样做。在安装 python 3.10.2 之前,请在 Windows 命令提示符中键入并执行以下命令:
\npip freeze > reqs.txt\n
Run Code Online (Sandbox Code Playgroud)\n此命令将适合 pip 的版本中所有已安装软件包的名称写入 reqs.txt 文件。如果您以管理员权限运行命令提示符,则 reqs.txt 文件将保存在目录中C:\\WINDOWS\\system32
。
然后,安装 python 3.10.2 并将其添加到 PATH 中的路径后,在命令提示符的帮助下,您需要发出以下命令:
\npip install -r reqs.txt\n
Run Code Online (Sandbox Code Playgroud)\n这将开始安装与 python 3.9 相同版本的软件包。如果出现问题,例如在安装 lxml 期间出现安装错误,则可以从 regs.txt 文件中删除包含安装导致问题的包名称的条目,然后手动安装。要编辑 reqs.txt 文件,您需要管理员权限。最简单的方法是在管理员模式下运行命令提示符,输入 reqs.txt 并单击 Enter 进行编辑。
\n后来我决定将缺少的软件包更新到最新版本,因为我怀疑旧版本与 python 3.10.2 不兼容。\n这意味着在升级到 python 3.10.2 时值得问问自己是否升级更好对于所有包。为此,您可以使用以下命令生成过时软件包的列表:
\npip list \xe2\x80\x93-outdated\n
Run Code Online (Sandbox Code Playgroud)\n在命令提示符中打印列表后,您可以使用以下命令升级过时的软件包:
\npip install --upgrade <package-name>\n
Run Code Online (Sandbox Code Playgroud)\n这可以通过编辑 reqs.txt 文件并将标记 == 更改为 > 来自动化,这将加快升级速度。标记 > 只能针对过时的软件包进行更改,否则您将收到错误:“无法找到满足要求的版本...”。
\n虚拟环境的补充:
\n当您进入虚拟环境目录(在Windows命令提示符中):,例如D:\\python_projects\\data_visualization\\env\\Scripts
,键入activate将其激活。然后创建类似于上面描述的 reqs.txt 文件。然后,将文件复制到临时目录。此后删除虚拟环境,例如使用 Windows 资源管理器删除目录内容env
。然后,在我们选择的 Windows 中使用 python 版本,使用env
目录创建虚拟环境(请参阅: https: //docs.python.org/3/library/venv.html)。将 regs.txt 文件复制到新创建的D:\\python_projects\\data_visualization\\env\\Scripts
目录中。如上所述,在 regs.txt 文件的支持下安装站点包。