在 PyCharm 中创建新项目后立即出现“无效的 Python SDK”错误

Tes*_*ekh 6 python virtualenv pycharm python-3.x

背景

前段时间,我在使用 PyCharm 时严重崩溃了我的 Windows 计算机 - 我记得一些有关内存的错误,然后发生了严重崩溃,没有蓝屏 - 只是黑色,有一些细垂直线,然后重新启动到 Windows 安装/修复屏幕。从那时起,我就遇到了这个问题,我在网上找不到解决这个问题的方法。

编辑:显然,这与问题无关。

问题

每当我打开一个项目或创建一个新项目时,都会出现一条错误,并显示“无效的 Python SDK”错误消息。


**Invalid Python SDK**
Cannot set up a Python SDKat Python 3.9 (%projectName%) (%projectPath%).The SDK seems to be invalid.
Run Code Online (Sandbox Code Playgroud)

另外,这就是我关闭此消息时工作环境的样子。在“项目”窗口中,该venv目录(及其下的每个目录)被标记为“排除”,并且在代码中,该print(f'Hi, {name}')函数被标记为“未解决的引用错误”,如下所示。然而,该程序执行完美。

未解决的参考错误

更重要的是,当我进入 Python 解释器设置时,File -> Settings -> Project -> Python Interpreter底部有一个黄色条,上面写着:

非零退出代码 (4)。

一段时间后说:

未找到 Python 打包工具。

安装后,没有任何变化,我无法从此屏幕添加软件包(“+”按钮呈灰色):

变灰

当我尝试检查 Python 解释器路径时,没有显示路径,我不知道这意味着什么:

没有路径

简而言之,所有默认的 Python 函数(如 print)都被标记为错误,即使它们在执行时有效。这使得编码变得极其混乱,因为我无法快速区分真正的错误和“错误”。

寻找解决方案

通常,这可能是解释器设置或路径的问题,但我已经尝试了类似问题的其他答案中提出的大多数方法。仅举几例:

  • PyCharm 显示有效代码的未解析引用错误
  • 重新安装操作系统后,使用 virtualenv 在 PyCharm 项目中“无法设置 Python SDK”
  • 在 PyCharm 中设置项目解释器时,为什么会收到“SDK 似乎无效”错误?
  • 在 PyCharm 上使用 python 3.4 时出现无效的 Python SDK 错误
  • 设置 venv 时 Python SDK 无效

应该有链接,但我在 Stack Overflow 上没有足够的声誉来发布带有问题的链接。然而,这些都可以在 Google 中轻松查找,所有这些都发布到 Stack Overflow。

我尝试过的

我应该提到的是,我尝试的第一件事是删除并安装 PyCharm、所有用户配置以及 Python 本身。我从官方网站和 PyCharm 应用程序安装了 Python,两种方法都得到了相同的结果。

  1. File -> Invalidate Caches... -> Invalidate and restart.没用。
  2. 检查 中的文件解释器Edit Configurations。不知道该怎么办。结果:

结果。

  1. 刷新解释器路径。即使现在,这些路径也没有产生任何结果。

没有结果

  1. 删除解释器并再次添加。没有结果。
  2. 删除.idea文件夹。没有结果。
  3. 删除 下的 PyCharm 用户首选项%homepath%/.PyCharm50。不过我没有那个文件夹。
  4. 来回切换口译员。没有结果。
  5. 在不同的位置创建一个新的解释器。没有结果。
  6. 将项目目录标记为根目录ProjectName -> Mark Directory as -> Sources Root并将其他目录取消标记为排除。没有结果。
  7. 不使用口译员。是的,它不再将非错误标记为错误。但代码不起作用。这对我来说不是一个解决方案。
  8. 检查venv/pyvenv.cfg路径是否设置正确。这些对我来说看起来不错。

美好的

  1. 检查 Windows 环境变量 - 路径变量。它位于用户部分,但不在系统部分。我添加了,重启了,还是没有结果。
  2. 在 Windows 中更改帐户名。我的帐户名是“用户名”,这就是我的用户文件夹的名称“C:\Users\用户名”,但后来我将其连接到 Microsoft 帐户,我的用户名现在是带空格的用户名,我无法真正更改它。我的文件夹保持不变。不确定我是否可以这样解决它。

对于我尝试的最后两件事,我还应该补充一点,我将 Windows 用户名从“用户名”更改为带有空格的“用户名”,但直到最近才这样做。

我附上idea.log 文件供您检查。我用“用户名”替换了我的真实用户名,以突出显示空格的存在。

psa*_*rka 4

好吧,那真是一个幸运儿!因此,我发表评论作为答案:

该问题是由路径中的非ASCII字符引起的,解决方案是删除它们。正如 @TheLazyScripter 所指出的,这是一个已知问题。