GDAL调用ReadAsRaster报错:无法从osgeo导入_gdal_array
解决GDAL调用ReadAsRaster时出现的
_gdal_array导入错误 问题场景
在全新Python环境中先安装numpy(1.24.2)再安装GDAL(3.6.2),GDAL可正常导入并使用gdal.Open()打开图像,但调用ReadAsRaster时触发报错:
ImportError: cannot import name '_gdal_array' from 'osgeo'
可行解决方案
降级numpy至兼容版本
GDAL 3.6.x与numpy 1.24.x存在兼容性适配问题,建议将numpy降级到1.23.x系列,执行命令:pip install numpy==1.23.5 --force-reinstall使用conda重新安装GDAL与依赖
pip的预编译GDAL包可能未正确绑定numpy依赖,改用conda安装可自动处理版本适配:conda install gdal=3.6.2 numpy=1.23.5重新安装GDAL确保完整性
若GDAL安装不完整导致缺失_gdal_array模块,先彻底卸载GDAL:pip uninstall -y gdal确认numpy版本兼容后,重新安装GDAL:
pip install gdal==3.6.2验证模块完整性
进入Python交互环境,执行以下命令检查osgeo模块是否包含_gdal_array:import osgeo print("_gdal_array" in dir(osgeo))若返回
False,则说明安装不完整,需重新执行上述重新安装步骤。
内容的提问来源于stack exchange,提问作者jester_thomas
相关产品推荐
相关产品推荐

