Chciałbym użyć arcpy w moim kodzie Pythona. Jestem w stanie zaimportować go za pomocą stacjonarnej konsoli python ARCGIS. Ale nie jestem w stanie zaimportować go do Python IDLE. Pojawia się następujący błąd
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")
Wspomniałem następujące foldery jako część mojej ścieżki python.
C:\Program Files\ArcGIS\Desktop10.0\arcpy;
C:\Program Files\ArcGIS\Desktop10.0\arcpy\arcpy;
C:\Python26\ArcGIS10.0\Tools\Scripts
Znalazłem ten sam problem.
import arcpy daje „TypeError: Ten obiekt nie obsługuje wyliczenia”
Użytkownik twierdzi, że wynika to z następujących przyczyn:
Napisałem dla Arcgis 9 i 10 w tym samym katalogu. Coś na temat logiki inicjalizacji w importowanym arcpy znajduje niestandardowy plik arcgisscripting.py używany do uruchamiania Pythona 2.6 z arcgis 9.3, gdy są one umieszczone razem.
Mam tylko ARCGIS 10 i nie jestem świadomy tego, jak arcpy szuka swoich modułów.
arcpy
arcgis-10.0
idle
Karthik Bharadwaj
źródło
źródło
Odpowiedzi:
Napraw swój
PYTHONPATH
. Z pomocy ArcGIS:Korzystając z instrukcji importu, Python szuka modułu pasującego do tej nazwy w następujących lokalizacjach (w następującej kolejności):
PYTHONPATH
systemowej zmiennej środowiskowejC:\python2x\lib
,C:\python2x\Lib\site-packages
i tak dalej).pth
pliku znalezionym w 1 i 2Aby uzyskać więcej informacji na ten temat, zobacz: http://docs.python.org/install/index.html#modifying-python-s-search-path . Instalacja produktów ArcGIS 10.0 spowoduje zainstalowanie Pythona 2.6, jeśli nie jest jeszcze zainstalowany. Instalacja doda również plik
Desktop10.pth
(lubEngine10.pth
lubServer10.pth
) dopython26\Lib\site-packages
. Zawartość tego pliku to dwa wiersze zawierające ścieżkę do folderów arcpy i bin instalacji ArcGIS. Te dwie ścieżki są wymagane do pomyślnego zaimportowania ArcPy w Pythonie w wersji 2.6. Podczas korzystania z instrukcji importu Python odwołuje się doPYTHONPATH
zmiennej środowiskowej systemu w celu zlokalizowania plików modułów. Ta zmienna jest ustawiona na listę katalogów.Wskazówka:
Jeśli podczas importowania ArcPy wystąpi jeden z następujących błędów, nie można znaleźć wymaganych modułów:
ImportError: No module named arcpy
ImportError: No module named arcgisscripting
Aby rozwiązać ten problem, przejdź do
python26\Lib\site-packages
folderu za pomocą Eksploratora Windows i dodaj lub edytujDesktop10.pth
plik. Plik powinien zawierać dwa wiersze pokazane poniżej (poprawione do ścieżki systemu, jeśli się nie zgadzają):C:\Program Files\ArcGIS\Desktop10.0\arcpy
C:\Program Files\ArcGIS\Desktop10.0\bin
źródło