如何在PyCharm中将项目重新路由到另一个Python版本?(错误:“C:\Users\…\Python.exe”中没有Python)

2024-09-30 16:22:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用64位版本替换Python 3.8 32位,以安装面部识别模块,因此我删除了以前的版本,并尝试通过转到File>;将项目重新路由到新的Python版本;设置>;项目口译员>;全部显示>;显示所选解释器的路径,并从新文件夹中添加所有Python文件并删除旧文件

dumb ffuckin picture smh

但是,当我尝试安装模块时,它仍然显示此错误:

(Will2.0) C:\Users\solei\PycharmProjects\Will>pip install face_recognition
No Python at 'C:\Users\solei\AppData\Local\Programs\Python\Python38-32\python.exe'

我也尝试过访问Windows系统属性,并更改其中显示“Python38-32”的所有内容,但仍然不起作用当我创建一个新环境时,它确实可以工作,所以至少我知道Python安装正确。正是这一个环境让我大吃一惊(顺便说一句,我不想为此做一个新项目。我已经在其中安装了很多模块。)


Tags: 模块文件项目gt路径版本文件夹路由
1条回答
网友
1楼 · 发布于 2024-09-30 16:22:07

您选择的解释器不是您用64位版本替换的系统解释器,而是您的项目的virtual environment interpreter。虚拟环境的文件在此过程中没有更改,需要先更新,然后才能再次使用该环境

  • 系统解释器是使用安装可执行文件安装的Python解释器。在您的例子中,它位于C:\Users\solei\AppData\Local\Programs\Python\Python38\。您可以安装多个系统解释器,例如并排安装Python2.7、Python3.7和Python3.8

  • 虚拟环境解释器是使用Python标准库中的venv包创建的另一个解释器的副本。系统中可以有许多虚拟环境解释器(例如,每个项目一个或多个)

  • 基本解释器是用作venv包模板的解释器。每个虚拟环境解释器都有其运行所需的基本解释器(通常是系统解释器)。更改或升级基本解释器需要更新虚拟环境

如果我们快速查看一下documentation,虚拟环境被描述为

a self-contained directory tree that contains a Python installation for a particular version of Python, plus a number of additional packages.

这意味着您可以为每个项目设置一个单独的环境,其中将包含它自己的包。环境是管理项目包的一种非常有效的方式,这就是为什么默认情况下,PyCharm建议通过系统解释器创建这样的环境。简而言之,它允许两个不同的项目使用同一包的两个不同版本,而不会使包相互冲突

这也解释了为什么您的虚拟环境文件不受升级的影响


现在,我不幸不是Python专家。我不得不花一些时间研究Python如何在Windows和Ubuntu上处理虚拟环境。环境似乎总是需要系统中存在的基本系统解释器。如果删除或更改基本解释器的位置,环境将无法正常工作

正如我在编辑这个答案之前提到的,理论上,您可以简单地编辑虚拟环境根文件夹中的pyenv.cfg文件。实际上,这只适用于简单的情况,而不是更新虚拟环境的预期方式。

您需要升级虚拟环境的文件以使用新的系统解释器。这可能意味着64位版本超过了32位版本,甚至是更新版本的Python——比如我们从3.7升级到3.8

  1. Close PyCharm

  2. 检查要升级到的系统解释器是否在系统路径上

    您可以通过运行快速检查

    python -c "import platform; print(platform.architecture())"
    

    对于您来说,输出应该如下所示

    ('64bit', 'WindowsPE')
    

    如果输出不同,则需要在步骤4)中为Python可执行文件的绝对路径添加前缀

  3. 导航到虚拟环境的目录

    您正在查找的目录包含IncludeLibScripts目录以及pyenv.cfg文件。从您的屏幕截图来看,此目录似乎是项目的根目录,因此在您的情况下:

    cd C:\Users\solei\PycharmProjects\Will2.0\
    
  4. 升级虚拟环境

    python -m venv  upgrade .
    

    。。。或者如果Python不在您的路径上

    C:\Users\solei\AppData\Local\Programs\Python\Python38\python.exe -m venv  upgrade .
    

    命令中的.引用当前目录

  5. 打开PyCharm并验证您的环境是否正常工作

    。。。或者直接从命令行运行pip。注意,首先需要运行Scripts\activate.bat批处理文件来activate the virtual environment


如果上述方法不起作用,您可能必须创建一个新的虚拟环境。你可以很容易地创造一个不要做一个新的PyCharm项目。请参阅此PyCharm documentation以供参考。但是,您仍然需要重新下载所有必需的包

为了简单起见,我建议在项目根目录中的.venv文件夹中创建新的虚拟环境

免责声明

我仅在Windows沙盒中的新Windows安装上测试了Python的行为。我能够安装32位Python,创建一个虚拟环境,用64位版本替换Python,并升级虚拟环境使其再次正确启动

相关问题 更多 >