Ich möchte arcpy in meinem Python-Code verwenden. Ich kann es über die ARCGIS-Desktop-Python-Konsole importieren. Ich kann es jedoch nicht in Python IDLE importieren. Ich erhalte den folgenden Fehler
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")
Ich habe die folgenden Ordner als Teil meines Python-Pfads erwähnt.
C:\Program Files\ArcGIS\Desktop10.0\arcpy;
C:\Program Files\ArcGIS\Desktop10.0\arcpy\arcpy;
C:\Python26\ArcGIS10.0\Tools\Scripts
Ich fand das gleiche Problem erwähnt.
import arcpy ergibt "TypeError: Dieses Objekt unterstützt keine Aufzählung"
Der Benutzer sagt, dass dies auf Folgendes zurückzuführen ist:
Ich habe für Arcgis 9 und 10 im selben Verzeichnis geschrieben. Etwas an der Initialisierungslogik in import arcpy findet die benutzerdefinierte Datei arcgisscripting.py, die zum Ausführen von Python 2.6 mit arcgis 9.3 verwendet wird, wenn sie sich zusammen befinden.
Ich habe nur ARCGIS 10 und mir ist nicht bekannt, wie arcpy nach seinen Modulen sucht.
quelle
Antworten:
Repariere deine
PYTHONPATH
. In der ArcGIS-Hilfe:Bei Verwendung einer Importanweisung sucht Python an den folgenden Stellen (und in der folgenden Reihenfolge) nach einem Modul, das diesem Namen entspricht:
PYTHONPATH
Systemumgebungsvariablen angegebene PfadeC:\python2x\lib
,C:\python2x\Lib\site-packages
, und so weiter).pth
Datei in 1 und 2 angegebene PfadeWeitere Informationen hierzu finden Sie unter: http://docs.python.org/install/index.html#modifying-python-s-search-path . Bei der Installation von ArcGIS 10.0-Produkten wird Python 2.6 installiert, sofern es noch nicht installiert ist. Bei der Installation wird auch die Datei
Desktop10.pth
(oderEngine10.pth
oderServer10.pth
) hinzugefügtpython26\Lib\site-packages
. Der Inhalt dieser Datei besteht aus zwei Zeilen, die den Pfad zu den Arcpy- und Bin-Ordnern der ArcGIS-Installation Ihres Systems enthalten. Diese beiden Pfade sind erforderlich, um ArcPy in Python Version 2.6 erfolgreich zu importieren. Bei Verwendung einer Importanweisung verweist Python auf diePYTHONPATH
Umgebungsvariable Ihres Systems , um Moduldateien zu finden. Diese Variable wird auf eine Liste von Verzeichnissen festgelegt.Trinkgeld:
Wenn beim Importieren von ArcPy einer der folgenden Fehler auftritt, wurden die erforderlichen Module nicht gefunden:
ImportError: No module named arcpy
ImportError: No module named arcgisscripting
Um dies zu beheben, navigieren Sie mit Windows Explorer zum
python26\Lib\site-packages
Ordner und fügen Sie dieDesktop10.pth
Datei hinzu oder bearbeiten Sie sie . Die Datei sollte die beiden unten gezeigten Zeilen enthalten (korrigiert auf den Pfad Ihres Systems, wenn sie nicht übereinstimmen):C:\Program Files\ArcGIS\Desktop10.0\arcpy
C:\Program Files\ArcGIS\Desktop10.0\bin
quelle