MacOS Python3.7环境升级PIL执行命令报错问题求助
报错根因
三个核心问题导致你执行命令失败:
python3 -m 模块名的运行要求对应模块根目录必须存在__main__.py入口文件,低版本Pillow没有内置这个入口文件,直接执行python3 -m PIL必然触发你看到的报错。- 包名混淆:Pillow是PyPI上的安装包名称,安装完成后Python侧的导入包名固定为
PIL,不存在顶层的Pillow、Image模块,你后面尝试的两个执行命令本身就是错误的。 - 版本兼容边界:Python 3.7最高支持到Pillow 9.5.0,更高版本的Pillow已经放弃Python 3.7适配,强行安装会出现各类兼容报错。
操作步骤
按顺序执行以下操作即可修复:
- 先清理当前环境的残留安装包,避免多版本冲突,以下命令重复执行到提示没有对应安装包为止:
pip3 uninstall -y pillow pip3 uninstall -y PIL pip3 uninstall -y pil - 安装适配Python 3.7的稳定版Pillow:
pip3 install pillow==9.5.0 - 验证安装结果,不要用
-m方式做基础验证,直接执行导入测试即可:
命令执行后正常输出版本号、无报错就说明安装完成,可以正常调用PIL相关能力。python3 -c "from PIL import Image; print('Pillow安装正常,当前版本:', Image.__version__)"
补充说明
你之前尝试的python3 -m PIL命令是Pillow 8.2.0版本之后新增的入口能力,安装完上述9.5.0版本后,再执行这个命令就不会再报找不到__main__的错误,可以正常查看版本信息、内置功能演示。
不要尝试安装Pillow 10.0.0及以上版本,这类版本不支持Python 3.7,会出现编译失败、导入异常等问题。
内容的提问来源于stack exchange,提问作者unnamed-dev
相关产品推荐
相关产品推荐

