Windows10新安装Python后执行pip报source code string cannot contain null bytes错误
错误产生原因
核心触发点是Python加载pip._internal.utils.appdirs模块时,检测到对应源码文件中存在不可解析的空字节(Null Byte),常见诱因如下:
- Python安装包下载过程中网络波动,导致安装包内文件损坏,携带异常空字符
- 安装Python时磁盘写入异常、中途中断安装,导致site-packages目录下的pip依赖文件写入不完整
- 后续第三方软件修改、误触了Python安装目录下的源码文件,插入了异常字符
解决方法
按操作复杂度从低到高尝试即可:
- 方法1:使用Python内置工具修复pip
打开管理员权限的命令提示符/ PowerShell,执行命令:
该命令会自动校验并替换损坏的pip相关依赖文件,无需额外下载资源。python -m ensurepip --upgrade - 方法2:手动修复损坏的appdirs模块
如果方法1执行失败,可手动替换损坏的模块文件:- 打开路径
C:\Program Files\Python\Lib\site-packages\pip\_internal\utils\ - 找到
appdirs.py文件,用代码编辑器(如VS Code、Notepad++)打开,删除其中的乱码/不可见空字符,或直接复制对应Python版本的官方appdirs.py源码替换原有内容 - 保存后重新执行pip命令验证
- 打开路径
- 方法3:全新重装Python环境
如果上述方法都无效,说明损坏的文件不止一处,按步骤重装即可:- 从控制面板完全卸载当前Python,删除残留的安装目录
C:\Program Files\Python - 删除用户目录下的pip配置文件夹:
C:\Users\你的用户名\AppData\Roaming\pip - 重新下载对应版本的Python官方安装包,右键选择「以管理员身份运行」完成安装,安装过程中不要中断
- 从控制面板完全卸载当前Python,删除残留的安装目录
内容的提问来源于stack exchange,提问作者Krishna Agarwal
相关产品推荐
相关产品推荐

