首页 > 解决方案 > 如何使 pyenv 在 Windows 中正常工作?

问题描述

我已经安装了pyenv-win,现在我尝试使用不同版本的 python 进行开发。我已经在 Windows 中安装了 python 3.10.0 并正确设置了环境变量。

现在我已经安装python 3.9.6pyenv执行了pyenv local 3.9.6,当我执行时pyenv which python,它输出3.9.6 (set by C:\Users\alipi\OneDrive\Desktop\Codes\ecommerse\.python-version)

当我在 shell 中执行以下代码时:

>>> import sys
>>> sys.executable
>>> 'C:\\Users\\alipi\\AppData\\Local\\Programs\\Python\\Python310\\python.exe'

但是python必须参考python 3.9.6。如何解决?

标签: pythonpyenv

解决方案


像这样的问题没有任何意义,而且很可能是一个不了解 venv 或 pyenv 或 python shell 之间区别的人提出的问题。

简单的答案:离开python shell。目前没有理由使用 python shell。

您应该使用命令提示符或 PowerShell(老派)。然后无论打开这些工具,使用 cd(更改目录)或 cd..(向后)导航到 C 驱动器。在那里,为您想要使用虚拟环境的位置创建一个新目录。

   mkdir MyVEplayground

接下来使用 cd 导航到该新目录。

C:\MyVEplayground

接下来,创建虚拟环境。为了让事情不那么混乱,只需使用内置于 python 中的常规 venv 函数创建 VE。

python -m someName venv

接下来,需要激活新的虚拟环境。当创建新的 VE 时,会创建一个名为 (someName) 的新子目录,然后还添加了一些子子目录。

使用 cd(cmd 或 ps)向下移动到名为 someName 的新子目录

cd someName

没有理由进入此文件夹下方。只需保留在这个新文件夹 C:MyVEplayground\someName 中。

然后 Cmd 提示符或 PS 来激活这个新的 VE。只需键入以下代码。这将向下导航到正确的子文件夹,然后激活这个 VE——所有这些都在同一时间进行,而不必去那里。

.\Scripts\Activate

建议在使用任何涉及虚拟环境的 python 库之前熟悉 python 内置的基本 venv 函数 - 例如 pyvenv,您似乎正在尝试使用它。这些 VE 库具有可选的和高级的虚拟环境功能,在了解内置的 venv 功能之前最好避免使用这些功能。

一旦这个 VE 被激活,它应该非常明显并且几乎不可能错过注意到。


推荐阅读