项目场景:

花了一个月的时间完成了<<ROSXXX>>项目,项目功能主要采集三个相关领域平台每天实时更新的数据用于ROS项目中.


问题描述

准备将程序放到试验机上运行前期测试时,发现代码在python命令行和用pyinstaller打包后生的exe不能正常运行(生成日志提示 与 Python命令行提示相同)
错误提示: No module named ‘cv2‘ 或 No module named ‘xxxxx‘
意思是:‘xlrd3‘ 模块找不到
注意:代码在pycharm中能正常运行

d:\python ros_main.py
错误提示:
No module named 'xxxxx'

d:\pyinstaller -F ros_main.py 
生成exe,并运行出现同样的提示,在打包日志里也能找到类似的错误提示
错误提示:
No module named 'xxxxx'

原因分析:

D:\Python ros_main.py 或是打包时出现
# 提示:ModuleNotFoundError: No module named ‘模块名称‘
# 程序能在PyCharm中正常运行
# 原因:在Pycharm项目目录\site-packages下安装过了xlrd3,在python安装目录\site-packages下没有安装xlrd3
# 试错:把项目目录下的\site-packages设置到Python环境变量还是不行

解决方案:

将Pycharm项目目录(源代码目录下)\site-packages下找到[模块名称]目录,将其复制到Python安装目录下的\site-packages下
# 建议:搜索site-packages文件夹所在的路径
# 项目目录:
D:\MyWork\Dytest\Lib\site-packages
# Python安装目录
C:\Users\1\AppData\Local\Programs\Python\Python38-32\Lib\site-packages

提示:在使用pip安装python包文件时,一定要注意安装路径要统一存放在Python安装目录\Python38-32\Lib\site-packages,避免出现类似的问题.

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐