Ubuntu下PyCharm运行Odoo11提示ImportError: No module named 'PyPDF2'
嘿,这个问题我太熟了——十有八九是PyCharm用的Python解释器和你终端里的不是同一个,毕竟Ubuntu系统里经常会有多个Python版本或者虚拟环境在搞事情。别慌,一步步来排查解决:
第一步:核对PyCharm的Python解释器配置
打开PyCharm,依次点击File → Settings → Project: [你的项目名称] → Python Interpreter。在这里看一下当前使用的解释器路径,和你终端里执行which python3(或者which python,取决于你用的版本)输出的路径是不是完全一致?
如果不一样,说明PyCharm正在使用另一个环境(比如项目专属的虚拟环境,或者系统里的另一个Python版本),这就是模块找不到的根源。第二步:在PyCharm的目标环境里安装PyPDF2
如果确认了PyCharm用的是项目需要的解释器,直接在Python Interpreter界面点击右上角的「+」按钮,搜索PyPDF2,然后点击「Install Package」完成安装。
或者更直接的:打开PyCharm自带的终端,先激活项目的虚拟环境(如果有的话),然后执行pip install PyPDF2(如果是Python3环境,可能需要用pip3)。第三步:检查Odoo运行配置的解释器
有时候即使全局解释器对了,运行脚本的配置里可能指定了别的解释器。点击Run → Edit Configurations...,找到你用来启动Odoo的那个配置,检查「Python interpreter」选项是不是选对了项目对应的解释器。额外提醒:虚拟环境的坑
如果你为Odoo项目创建了虚拟环境,一定要确保你在终端里安装PyPDF2的时候,是先激活虚拟环境再执行安装命令的。全局安装的模块不会自动出现在虚拟环境里,反之亦然。
这样操作下来,PyCharm应该就能顺利找到PyPDF2模块了。
内容的提问来源于stack exchange,提问作者Kane Samba

