树莓派3b+虚拟环境导入numpy报错:请勿从源码目录导入
解决numpy导入报错(非源码目录却提示从源码导入)
针对树莓派3B+虚拟环境下的问题,给你几个实用排查和解决方法:
检查Python模块搜索路径
在app.py开头加这段代码,打印当前Python的模块搜索路径,排查是否有意外的numpy源码目录混入:import sys print(sys.path)运行后如果看到包含numpy源码的路径(比如带
setup.py的numpy文件夹路径),要么在代码里临时移除该路径,要么检查终端环境变量PYTHONPATH——执行echo $PYTHONPATH,如果有异常路径就清空后重启虚拟环境。彻底重装numpy
虚拟环境里的numpy可能安装损坏,按以下步骤重新安装:# 激活虚拟环境 source venv/bin/activate # 彻底卸载numpy pip uninstall -y numpy # 清理pip缓存 pip cache purge # 指定版本重新安装 pip install numpy==1.26.2确认虚拟环境激活状态
先看终端提示符开头是否有(venv)标识,或者执行which python,输出应为./venv/bin/python。如果不对,重新激活虚拟环境再运行代码。排查命名冲突
再次确认当前目录没有numpy.py文件或numpy文件夹(包括隐藏的.numpy目录),避免脚本命名和numpy模块冲突。验证numpy安装路径
激活虚拟环境后,在终端执行:python -c "import numpy; print(numpy.__file__)"正常输出应该是
venv/lib/python3.9/site-packages/numpy相关路径,如果不是,说明Python没使用虚拟环境里的numpy,需排查环境切换问题。
内容的提问来源于stack exchange,提问作者Rasmus
相关产品推荐
相关产品推荐

