求助:无法解决‘ModuleNotFoundError: No module named 'setuptools.extern.six'’错误
菌落计数代码依赖问题与窗口显示异常解决方案
问题说明
我在GitHub上找到一款菌落计数代码,运行后生成的窗口和项目页面展示的示例窗口不一致。尝试安装requirements.txt中的依赖包来解决时,出现以下错误:
ModuleNotFoundError: No module named 'setuptools.extern.six'
运行环境:
- VS Code,默认Python版本3.11
- 未修改下载的代码,项目推荐的前置依赖:
- numpy 1.20.1
- OpenCV 4.5.1.48
- screeninfo 0.8.1(及相关依赖)
解决步骤
1. 修复six模块缺失问题
Python 3.11及新版setuptools已移除setuptools.extern.six模块,需单独安装six:
pip install six
2. 适配Python版本差异
原代码基于Python 3.8开发,和3.11存在兼容性风险,建议创建Python 3.8的虚拟环境:
- 安装Python 3.8版本
- 创建并激活虚拟环境:
# Windows系统 python3.8 -m venv colony_count_env colony_count_env\Scripts\activate # macOS/Linux系统 python3.8 -m venv colony_count_env source colony_count_env/bin/activate - 在虚拟环境中安装指定版本的依赖:
pip install numpy==1.20.1 opencv-python==4.5.1.48 screeninfo==0.8.1
3. 验证窗口显示
重新运行代码,检查窗口是否与示例一致。若仍有异常,可确认是否因高版本Python中OpenCV的imshow等GUI接口行为变化导致,确保已严格安装项目指定版本的OpenCV。
内容的提问来源于stack exchange,提问作者Luis Cruz
相关产品推荐
相关产品推荐

