我重新安装了 Windows 并打开了一个现有的 Pycharm 项目,并在“设置”>“项目解释器”中收到错误消息“SDK 似乎无效”。
项目解释器路径指向 venv 中的 python:
MyProject\venv\Scripts\python.exe
我尝试重新添加 python.exe:
那是我收到错误的时候:
更新: 这是来自 idea.log 的错误,虚拟环境的许多其他问题似乎与 Windows 环境变量和系统路径有关:
2018-09-28 19:50:40,275 [ 17601] INFO - hon.packaging.PyPIPackageCache - Loaded 153296 packages from C:\Users\Matt\.PyCharm2018.2\system\python_packages\pypi-cache.json
2018-09-28 19:50:40,816 [ 18142] INFO - rains.python.sdk.PythonSdkType - Fatal Python error: Py_Initialize: unable to load the file system codec
ModuleNotFoundError: No module named 'encodings'
Current thread 0x00000fa8 (most recent call first):
Exit code -1073740791
2018-09-28 19:50:40,816 [ 18142] ERROR - ns.python.sdk.PythonSdkUpdater - Failed to determine Python's sys.path value:
STDOUT:
STDERR: Fatal Python error: Py_Initialize: unable to load the file system codec
ModuleNotFoundError: No module named 'encodings'
Current thread 0x00000fa8 (most recent call first):
com.jetbrains.python.sdk.InvalidSdkException: Failed to determine Python's sys.path value:
STDOUT:
STDERR: Fatal Python error: Py_Initialize: unable to load the file system codec
ModuleNotFoundError: No module named 'encodings'
原文由 el_pup_le 发布,翻译遵循 CC BY-SA 4.0 许可协议
什么解决方案是: 查看
venv\pyvenv.cfg
并提供基本 python 安装的有效路径。最有可能发生的事情: 重新安装操作系统后,您没有重新安装 基本 的 python 解释器,或者您将其安装在与以前不同的位置。因此,您的虚拟环境无法找到 python 安装。虚拟环境意味着所有库和设置都与其他项目隔离。它 不 提供独立的 python 安装。您仍然需要用于创建 venv 的基础 python。
我的案例: 我在网络共享中有一个项目,并尝试从不同的计算机访问它。基本的 python 路径取决于 PC。上面的解决方案对我来说很好用。不幸的是,我需要根据使用的 PC 更新
pyvenv.cfg
。PS 我相信有一个环境变量可以覆盖 venv 配置值。我只尝试
set PYTHONPATH=C:\Anaconda3\envs\python37
在 Windows 上,然后激活 venv。它没有效果,我放弃了。