卸载重装Python后遇SSL及编码错误,环境损坏求助
问题:Python环境彻底损坏,重装无效,无法运行任何Python命令
问题背景
此前VS Code的Pylance失效,尝试卸载并重装Python(从3.9.12更换为3.10.0)后,Python环境彻底损坏。
错误详情
1. 运行discord-webhook脚本时的错误
Traceback (most recent call last): File "e:\PythonProjects\Projects\DiscordWebhook.py", line 828, in <module> webhook.execute() File "C:\Users\Admin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord_webhook\webhook.py", line 444, in execute response = self.api_post_request() File "C:\Users\Admin\AppData\Local\Programs\Python\Python310\lib\site-packages\discord_webhook\webhook.py", line 397, in api_post_request return requests.post( File "C:\Users\Admin\AppData\Local\Programs\Python\Python310\lib\site-packages\requests\api.py", line 115, in post return request("post", url, data=data, json=json, **kwargs) File "C:\Users\Admin\AppData\Local\Programs\Python\Python310\lib\site-packages\requests\sessions.py", line 589, in request resp = self.send(prep, **send_kwargs) File "C:\Users\Admin\AppData\Local\Programs\Python\Python310\lib\site-packages\requests\sessions.py", line 703, in send r = adapter.send(request, **kwargs) File "C:\Users\Admin\AppData\Local\Programs\Python\Python310\lib\site-packages\requests\adapters.py", line 458, in send self.cert_verify(conn, request.url, verify, cert) File "C:\Users\Admin\AppData\Local\Programs\Python\Python310\lib\site-packages\requests\adapters.py", line 261, in cert_verify OSError: Could not find a suitable TLS CA certificate bundle, invalid path: C:\Users\Admin\AppData\Local\Programs\Python\Python310\lib\site-packages\certifi\cacert.pem
2. 运行pip重装时的错误
Python path configuration: PYTHONHOME = (not set) PYTHONPATH = (not set) program name = 'C:\Users\Admin\AppData\Local\Programs\Python\Python310\python.exe' isolated = 0 environment = 1 user site = 1 import site = 1 sys._base_executable = 'C:\\Users\\Admin\\AppData\\Local\\Programs\\Python\\Python310\\python.exe' sys.base_prefix = '' sys.base_exec_prefix = '' sys.platlibdir = 'lib' sys.executable = 'C:\\Users\\Admin\\AppData\\Local\\Programs\\Python\\Python310\\python.exe' sys.prefix = '' sys.exec_prefix = '' sys.path = [ 'C:\\Users\\Admin\\AppData\\Local\\Programs\\Python\\Python310\\python310.zip', 'C:\\Users\\Admin\\AppData\\Local\\Programs\\Python\\Python310\\Lib\\', 'C:\\Users\\Admin\\AppData\\Local\\Programs\\Python\\Python310\\DLLs\\', 'C:\\Users\\Admin\\AppData\\Local\\Programs\\Python\\Python310', ] Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding Python runtime state: core initialized ModuleNotFoundError: No module named 'encodings' Current thread 0x00002fe8 (most recent call first): <no Python frame>
已尝试的修复操作
- 移除PYTHONHOME和PYTHONPATH系统变量
- 移除Windows用户配置文件中的Python环境变量
- 使用Microsoft_Program_uninstall_reinstall_debugger.exe卸载Python 3.9.12
- 通过控制面板及文件删除所有Python版本
- 执行
sfc /scannow - 首次报错后尝试运行
python -m pip uninstall certifi - 重装VS Code
解决方案
1. 彻底清理Python所有残留
这是解决重装无效的核心步骤,必须确保无残留:
- 结束所有Python进程:打开任务管理器,找到并结束
python.exe、pip.exe、pythonw.exe等相关进程 - 删除安装目录:手动删除
C:\Users\Admin\AppData\Local\Programs\Python下的所有文件夹,以及自定义的Python安装路径(如果有) - 删除用户缓存:删除
C:\Users\Admin\AppData\Roaming\Python文件夹 - 清理注册表:
- 按
Win+R输入regedit打开注册表编辑器 - 删除
HKEY_CURRENT_USER\Software\Python - 删除
HKEY_LOCAL_MACHINE\SOFTWARE\Python - 64位系统额外删除
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Python
- 按
- 清理环境变量:检查用户和系统的PATH变量,移除所有Python相关的路径条目,保存后重启命令提示符
2. 重新安装Python
- 下载官方稳定版Python安装包(推荐3.10.x或3.11.x)
- 运行安装包时,务必勾选"Add Python to PATH",选择"Customize installation"
- 可选功能中确保
pip、tcl/tk and IDLE、Python test suite全部勾选 - 高级选项里勾选
Install for all users,选择不含中文和空格的安装路径(比如C:\Python310) - 安装完成后,打开新的命令提示符,运行
python --version和pip --version验证是否正常
3. 恢复依赖与修复证书问题
- 若仍出现certifi相关错误,运行
pip install --upgrade certifi重新安装证书包 - 重新安装项目依赖:进入项目目录,运行
pip install discord-webhook requests,或通过requirements.txt批量安装
问题说明
环境损坏根源是卸载重装时残留的文件和注册表项导致冲突,后续卸载certifi破坏了TLS证书依赖,最终引发核心encodings模块缺失的致命错误——这说明之前的卸载未彻底清理,新安装的Python无法正确加载核心组件。
内容的提问来源于stack exchange,提问作者turtlesXD
相关产品推荐
相关产品推荐

