PyPy3运行代码报ModuleNotFoundError但普通Python可正常运行如何解决?
问题原因
该错误不是Python版本差异导致的,本质是PyPy和常规CPython(普通Python)是两套完全独立的运行环境,各自拥有独立的第三方库存储目录。你之前仅为CPython安装了python-dotenv依赖,没有为PyPy3环境安装该包,因此运行时找不到对应模块。
解决步骤
- 先为PyPy3安装配套的包管理工具pip(如果未安装的话),执行命令:
pypy3 -m ensurepip - 再使用PyPy3对应的pip安装缺失的依赖:
pypy3 -m pip install python-dotenv
后续使用注意事项
- 所有需要在PyPy3环境下使用的第三方包,都需要使用
pypy3 -m pip install 包名的格式安装,避免误调用CPython对应的pip导致包安装到错误路径。 - 如果使用虚拟环境管理依赖,创建环境时指定PyPy3作为解释器即可:
pypy3 -m venv 你的虚拟环境名,激活虚拟环境后安装的所有包都会自动适配PyPy3环境。
内容的提问来源于stack exchange,提问作者Ayesha Khan
相关产品推荐
相关产品推荐

