Snap7库终端正常但PyCharm等IDE无法导入的原因与解法
问题成因
你在终端、nano编写脚本运行都能正常导入snap7,说明snap7已经正确安装到当前系统默认的Python3环境中。PyCharm抛出ModuleNotFoundError: No module named 'snap7'的核心原因是PyCharm当前项目绑定的Python解释器,和终端调用的python3不属于同一个运行环境。
常见的具体触发情况:
- PyCharm新建项目时默认创建了隔离的虚拟环境(venv),该环境独立于系统Python环境,没有预装snap7
- 树莓派Buster系统中存在多个Python版本(系统自带Python3.7、后续手动安装的其他Python版本等),PyCharm选中的解释器路径并非终端执行
python3时调用的路径 - 安装snap7时使用了
pip --user或sudo pip安装到用户目录/系统全局目录,PyCharm所选解释器没有配置对应包路径的读取权限
解决方法
两种方案二选一即可:
方案1:切换PyCharm解释器为系统默认Python3
- 第一步先获取终端默认Python3的绝对路径,在系统终端执行命令:
执行后会返回路径,比如which python3/usr/bin/python3,记下这个路径。 - 打开PyCharm的对应项目,依次点击顶部菜单栏
File > Settings > Project: 你的项目名称 > Python Interpreter - 点击解释器下拉框右侧的齿轮图标,选择
Add Interpreter > Add Local Interpreter - 在弹出的配置窗口中选择
System Interpreter,在路径选择栏填入/选中第一步记下的python3路径,点击确认保存配置 - 等待PyCharm同步完解释器的已安装包索引后,重新运行脚本即可正常导入snap7
方案2:直接在PyCharm当前使用的环境中安装snap7
- 打开PyCharm底部工具栏的
Terminal标签,这个终端会自动激活当前项目绑定的Python环境 - 在该终端中直接执行安装命令:
pip install python-snap7 - 等待安装完成后重新运行脚本即可。
内容的提问来源于stack exchange,提问作者BeautifulYautja
相关产品推荐
相关产品推荐

