〇、前言
最近拿到一个领导很久前写的网络训练相关的代码,时间比较久,有些模块已经停止维护,不能下载,于是就在能找到的基本是很老的版本上做兼容,目前基本兼容了,最后的问题是几个包的顺序会影响程序是否会报错,这几个包之间没有互相依赖关系,但是有共同依赖关系,之前解决的加绒问题也正是解决共同依赖。
一、问题描述
1.1 正常运行情况
from osgeo import gdal
import keras as K
if __name__ == '__main__':
print(gdal.__version__)
print(K.__version__)
1.2 出错情况
import keras as K
from osgeo import gdal
if __name__ == '__main__':
print(gdal.__version__)
print(K.__version__)
错误信息
Using TensorFlow backend.
Traceback (most recent call last):
File "D:/文档/图像分割网络/Unet2/test_pkg_sort.py", line 6, in
from osgeo import gdal
File "C:\Users\pc-1\anaconda3\envs\py_unet\lib\site-packages\osgeo\__init__.py", line 26, in
_gdal = swig_import_helper()
File "C:\Users\pc-1\anaconda3\envs\py_unet\lib\site-packages\osgeo\__init__.py", line 22, in swig_import_helper
_mod = imp.load_module('_gdal', fp, pathname, description)
File "C:\Users\pc-1\anaconda3\envs\py_unet\lib\imp.py", line 243, in load_module
return load_dynamic(name, filename, file)
File "C:\Users\pc-1\anaconda3\envs\py_unet\lib\imp.py", line 343, in load_dynamic
return _load(spec)
ImportError: DLL load failed: 找不到指定的程序。
Process finished with exit code 1
二、当前办法
将两个包按照不出错的方式排列,但是仍然不知道原因,不知道什么时候又会暴雷。