【发布时间】:2021-12-09 22:55:22
【问题描述】:
背景
前段时间,我在使用 PyCharm 时严重崩溃了我的 Windows 计算机 - 我记得一些关于内存的错误,然后是没有蓝屏的硬崩溃 - 只是黑色并带有一些细垂直线,然后重新启动到 Windows 安装/修复屏幕。从那以后,我就遇到了这个问题,我在网上找不到解决这个问题的方法。
编辑:显然,这与问题无关。
问题
每当我打开一个项目或创建一个新项目时,都会出现错误并显示 Invalid Python SDK 错误消息。
**Invalid Python SDK**
Cannot set up a Python SDKat Python 3.9 (%projectName%) (%projectPath%).The SDK seems to be invalid.
另外,这就是我关闭此消息时work environment 的样子。在 Project 窗口中,venv 目录(及其下的每个目录)被标记为 Exclusion,而在代码中,print(f'Hi, {name}') 函数被标记为未解决的引用错误,如下所示。但是,该程序可以完美执行。
更重要的是,当我在File -> Settings -> Project -> Python Interpreter 转到 Python 解释器设置时,底部有一个黄色条,上面写着:
非零退出代码 (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,两种方法都以相同的结果结束。
-
File -> Invalidate Caches... -> Invalidate and restart.没用。 - 检查
Edit Configurations中的文件解释器。不知道该怎么做。结果:
- 刷新解释器路径。即使是现在,这些路径也不会产生任何结果。
- 删除解释器并重新添加。没有结果。
- 删除
.idea文件夹。没有结果。 - 删除
%homepath%/.PyCharm50下的 PyCharm 用户首选项。不过我没有那个文件夹。 - 来回切换解释器。没有结果。
- 在不同的位置创建一个新的解释器。没有结果。
- 将项目目录标记为根
ProjectName -> Mark Directory as -> Sources Root并将其他目录取消标记为已排除。没有结果。 - 不使用解释器。是的,它不再将非错误标记为错误。但是代码不起作用。这不是我的解决方案。
- 检查
venv/pyvenv.cfg的路径是否设置正确。这些对我来说看起来不错。
- 检查 Windows 环境变量 - 路径变量。它在用户部分,但不在系统部分。我添加了它,重新启动但仍然没有结果。
- 在 Windows 中更改帐户名称。我的帐户名是“用户名”,这就是我的用户文件夹被称为“C:\Users\username”的方式,但后来我将它连接到 Microsoft 帐户,我的用户名现在是带有空格的用户名,我无法真正更改它。我的文件夹保持不变。不知道我是否可以这样解决。
在我尝试的最后两件事中,我还应该补充一点,我将我的 Windows 用户名从“用户名”更改为“用户名”并带有空格,但直到最近才发生。
我附上idea.log file 供您查看。我用“用户名”替换了我的真实用户名以突出显示空间的存在。
【问题讨论】:
-
+1 表示付出了很多努力!我不知道发生了什么,但是您的日志文件抱怨了很多关于无法转换某些字符的问题,而且我看到您的路径是
C:\Users\aweg2\Desktop\Praca inżynierska\MRC\venv\Scripts\python.exe。可能不会做太多,但可能会尝试从路径中删除非 ASCII 字符? -
哦。我的……这就是答案。谢谢你,普萨卡。它在路径中没有非 ASCII 字符时工作。随意将其发布为答案,尽管我不确定 PyCharm 是否应该这样工作。在我看来我喜欢它应该能够处理...也许我应该安装更多的东西?干杯
-
这显然是一个知道issue很好的捕捉@psarka
标签: python python-3.x pycharm virtualenv