Я хотел бы использовать arcpy в моем коде Python. Я могу импортировать его через консоль Python для рабочего стола ARCGIS. Но я не могу импортировать его в Python IDLE. Я получаю следующую ошибку
Traceback (most recent call last):
File "C:\Python26\lib\site-packages\win32com\client\dynamic.py", line 246, in
__getitem__raise TypeError("This object does not support enumeration")
Я упомянул следующие папки как часть моего пути к Python.
C:\Program Files\ArcGIS\Desktop10.0\arcpy;
C:\Program Files\ArcGIS\Desktop10.0\arcpy\arcpy;
C:\Python26\ArcGIS10.0\Tools\Scripts
Я нашел ту же самую проблему, упомянутую.
import arcpy дает "TypeError: Этот объект не поддерживает перечисление"
Пользователь говорит, что это связано со следующим:
Я написал для Arcgis 9 и 10 в том же каталоге. Что-то в логике инициализации в импорте arcpy находит пользовательский arcgisscripting.py, используемый для запуска python 2.6 с arcgis 9.3, когда они расположены вместе.
У меня есть только ARCGIS 10, и я не знаю, как arcpy ищет свои модули.
arcpy
arcgis-10.0
idle
Картик Бхарадвадж
источник
источник
Ответы:
Исправь свой
PYTHONPATH
. Из справки ArcGIS:При использовании оператора импорта Python ищет модуль, соответствующий этому имени, в следующих местах (и в следующем порядке):
PYTHONPATH
системной переменной средыC:\python2x\lib
,C:\python2x\Lib\site-packages
и т.д.).pth
файла, найденного в 1 и 2Для получения дополнительной информации см. Следующее: http://docs.python.org/install/index.html#modifying-python-s-search-path . При установке продуктов ArcGIS 10.0 будет установлен Python 2.6, если он еще не установлен. Установка также добавит файл
Desktop10.pth
(илиEngine10.pth
илиServer10.pth
) вpython26\Lib\site-packages
. Содержимое этого файла состоит из двух строк, содержащих путь к папкам arcpy и bin, установленным в вашей системе ArcGIS. Эти два пути необходимы для успешного импорта ArcPy в Python версии 2.6. При использовании оператора импорта Python обращается кPYTHONPATH
переменной среды вашей системы, чтобы найти файлы модуля. Эта переменная установлена в список каталогов.Подсказка:
Если импорт ArcPy приводит к одной из следующих ошибок, необходимые модули не могут быть найдены:
ImportError: No module named arcpy
ImportError: No module named arcgisscripting
Чтобы решить эту проблему, перейдите с помощью проводника Windows в
python26\Lib\site-packages
папку и добавьте или изменитеDesktop10.pth
файл. Файл должен содержать две строки, показанные ниже (исправленные по пути вашей системы, если они не совпадают):C:\Program Files\ArcGIS\Desktop10.0\arcpy
C:\Program Files\ArcGIS\Desktop10.0\bin
источник