Я пытаюсь запустить код Python с помощью окна Python в ArcGIS 10.1 , который использует как arcpy
и gdal
модули. Однако, когда я пытаюсь импортировать gdal
модуль, я получаю сообщение об ошибке:
ImportError: No module named osgeo
Очевидно, что он не может найти модуль, поэтому я добавил свою основную директорию python site-packages в sys.path
список:
sys.path.append(r"C:\Python27\lib\site-packages")
Тем не менее, когда я пытаюсь запустить import osgeo
или from osgeo import gdal
я получаю следующую ошибку:
Runtime error
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Python27\lib\site-packages\osgeo\__init__.py", line 21, in <module>
_gdal = swig_import_helper()
File "C:\Python27\lib\site-packages\osgeo\__init__.py", line 17, in swig_import_helper
_mod = imp.load_module('_gdal', fp, pathname, description)
ImportError: DLL load failed: %1 is not a valid Win32 application.
Я нашел в Интернете различные ресурсы, в которых, похоже, говорится о похожих проблемах (например, этот вопрос и это сообщение на форуме , но они, похоже, устарели (т.е. не используют ArcGIS 10.1) или не задают совершенно одинаковые вопрос.
Конечно, импорт osgeo
из обычного окна без Дуга Python работает отлично, и я сравнил sys.path
и os.environ['PATH']
между сценариями и обновлены их так , что они такие же, и это , кажется, не решить эту проблему.
Кто-нибудь знает, как я могу заставить это работать?
Ответы:
@robintw подтвердил это в комментариях .
Из ошибки может показаться, что ваша установка Python 2.7 является 64-битной. Вам придется установить 32-битную версию Python и GDAL.
источник