Bei jeder Programmiersprache oder jedem Skript gibt es immer Zeiten, in denen einfach nichts funktioniert. Was kann man in solchen Fällen genau tun, um das Problem zu beheben? <\/P>
Um das Skript zu reparieren, muss man zuerst das genaue Problem feststellen, da es nicht immer offensichtlich ist. Unten sind drei Probleme oder Problembereiche aufgeführt, die Sie überprüfen sollten, wenn Ihr Python<\/A>-Skript nicht funktioniert.<\/P>Problem 1: Fehler im Code<\/U><\/P>Eines der häufigsten Probleme bei der Verwendung einer Programmiersprache ist, dass irgendwo im Code ein Fehler vorliegt. Die einfachste Möglichkeit, einen Fehler zu überprüfen, besteht darin, die Fehlermeldung (falls vorhanden) zu finden, die zurückgegeben wird. Die meisten Fehlermeldungen beziehen sich auf eine bestimmte Zeile im Code, die nicht funktioniert.<\/P>Das Herausfinden der Fehlermeldung kann sehr einfach sein, besonders wenn Sie das Skript in einer Integrierten Entwicklungsumgebung<\/A> (IDE) wie PythonWin oder Python IDLE ausführen. Sofern Sie keine try<\/B>- und except<\/B>-Anweisungen* in das Skript programmiert haben, gibt das Skript den Fehler und die Zeilennummer aus, in der er aufgetreten ist. Das macht es sehr einfach, den Fehler zu finden.<\/P>Unten sehen Sie ein Beispiel dafür, wie eine typische Fehlermeldung in PythonWin aussieht:<\/P>Das Erste, worauf man achten sollte, ist die Zeilennummer. Beachten Sie, dass zwei Zeilen gemeldet werden, aber diejenige, auf die Sie achten müssen, ist die direkt nach dem Namen des verwendeten Skripts (in diesem Fall Blog_samples.py) – siehe Pfeil 1. Die Zeile direkt darunter ist die tatsächliche Zeile aus dem Code selbst – siehe Pfeil 2.<\/P>Wenn das Problem mit einem Werkzeug oder einer Methode zusammenhängt, kann es Ihnen einen ArcGIS-Fehlercode geben, der Informationen über den Fehler enthält – siehe Pfeil 3. Im Beispiel existierte der Dateipfad nicht, daher wäre die Lösung, den Pfad zu überprüfen. Wenn Sie sich bei den Werkzeugfehlern unsicher sind, können Sie die Fehlermeldung in der ArcGIS Desktop-Hilfe<\/A> suchen, indem Sie den numerischen Code eingeben (zum Beispiel 000732). Hilfedokumente enthalten mögliche Lösungen für jeden Fehler.<\/P>Hinweis:<\/B> Überprüfen Sie unbedingt doppelt und dreifach Dateipfade oder lange Zeichenketten, da ein Tippfehler Fehler verursachen kann. Kopieren und Einfügen langer Zeichenketten minimiert Tippfehler.<\/P>Hinweis:<\/B> Wenn der Fehler auf Zeile 1 gemeldet wird, liegt das Problem möglicherweise nicht am Code selbst, sondern an einer anderen Abhängigkeit (zum Beispiel existiert das importierte Modul nicht).<\/P>*Warum verursachen try<\/B>- und except<\/B>-Anweisungen Probleme beim Überprüfen von Fehlermeldungen? Try<\/B> und except<\/B> werden für Fehlerüberprüfung und Validierungsverfahren verwendet und wenn sie ohne Möglichkeit zur Ausgabe der Fehlermeldung eingebaut sind, können sie den Fehler verschleiern und somit schwer auffindbar machen. Weitere Informationen zu Try/Except-Anweisungen bei der Fehlerbehandlung finden Sie im ArcGIS Desktop 9.3 Hilfe-Thema mit dem Titel Fehlerbehandlung in Python<\/A><\/I>. <\/P>Problem 2: Falsche Python-Version(en)<\/U><\/P>Python ist eine flexible Sprache und erlaubt die Installation mehrerer Versionen auf einem Rechner. Dies kann Probleme verursachen, wenn Programme wie ArcGIS eine bestimmte Version benötigen und der Rechner versucht eine andere zu verwenden. Jede ArcGIS-Version benötigt eine spezifische Python-Version auf dem Rechner und installiert diese Version beim Installieren von ArcGIS Desktop, ArcGIS Engine oder ArcGIS Server. Unten ist eine Tabelle mit ArcGIS-Versionen und den jeweiligen Python-Versionen:<\/P>ArcGIS-Version<\/TH>Python-Version<\/TH><\/TR>9.0<\/TD>2.1<\/TD><\/TR>9.1<\/TD>2.1<\/TD><\/TR>9.2<\/TD>2.4<\/TD><\/TR>9.3\/_9.3.1<\/TD>2.5<\/TD><\/TR>10.0<\/TD>2.6<\/TD><\/TR><\TBODY>Okay, jetzt wo wir wissen welche Version wir haben sollten: Wie prüfen wir welche Version tatsächlich verwendet wird? Jeder Dateityp unter Windows verwendet ein Standardprogramm zum Ausführen dieses Dateityps. Im Fall von Python ist dies python.exe<\/B>, das sich typischerweise im Systemordner befindet, in dem Python installiert wurde. Standardmäßig installiert ArcGIS seine Version im Verzeichnis C:PythonXX und python.exe befindet sich in diesem Verzeichnis.<\P>Um zu prüfen welche Python-Version verwendet wird, öffnen Sie den Windows Explorer und gehen zu Extras > Ordneroptionen > Registerkarte Dateitypen oder wenn Sie Windows Vista oder 7 verwenden, gehen Sie zur Systemsteuerung > Standardprogramme > Dateitypzuordnung und suchen dort die Erweiterung PY<\B>. Durch Auswahl sehen Sie welches Programm zum Ausführen dieses Dateityps verwendet wird; unter Windows XP können Sie durch Klicken auf "Erweitert" den Pfad zur Datei unter der Aktion "Öffnen" sehen.<\P>Dateityp-Dialogfelder unter Windows XP<\B>Neben einer falschen Python-Version besteht auch die Möglichkeit, dass die verwendete IDE-Version falsch ist. Dies gilt besonders für PythonWin. Um zu überprüfen welche Version von PythonWin verwendet wird und sicherzustellen dass sie zur richtigen ArcGIS-Version passt, starten Sie PythonWin mit geöffnetem Interactive Window<\B>, dort wird die Version angezeigt.<\P>Problem 3: Fehlende Abhängigkeiten oder Module<\U>Beim Arbeiten mit jeder Programmiersprache gibt es Zeiten in denen externe Bibliotheken oder Module notwendig sind. Wenn Sie diese Bibliotheken verwenden, muss das Skript sie am definierten Ort finden können.<\P>Python installiert standardmäßig alle Module (PY-Dateien) im Lib<\B>-Ordner des Python-Installationsverzeichnisses. Wenn Sie ein benutzerdefiniertes Modul verwenden, stellen Sie sicher dass es am richtigen Ort auf dem Rechner installiert ist, da dies variieren kann. Zum Beispiel wird das Modul arcgisscripting<\B> im bin<\B>-Verzeichnis des ArcGIS-Installationsordners installiert und nicht im Python-Installationsverzeichnis.<\P>Dabei sind Module einfach andere Dateien vom Typ PY, PYC oder PYD<\B> auf dem Rechner und werden durch die Anweisung import<\B> im Code hinzugefügt.<\P>Zum Schluss denken Sie daran: Die ArcGIS-Benutzergemeinschaft sowie Esri Support Services sowohl in den USA als auch unsere internationalen Vertriebspartner stehen Ihnen zur Unterstützung bereit. Schauen Sie unbedingt im Geoprocessing-Forum<\A> sowie in der Script Gallery<\A> nach Tipps und Ideen nach. Viel Erfolg beim Programmieren mit Python!<\P>- James U., Support Analyst - SDK-Gruppe, Esri Support Services<\P><\BODY>
Problem 1: Fehler im Code<\/U><\/P>Eines der häufigsten Probleme bei der Verwendung einer Programmiersprache ist, dass irgendwo im Code ein Fehler vorliegt. Die einfachste Möglichkeit, einen Fehler zu überprüfen, besteht darin, die Fehlermeldung (falls vorhanden) zu finden, die zurückgegeben wird. Die meisten Fehlermeldungen beziehen sich auf eine bestimmte Zeile im Code, die nicht funktioniert.<\/P>Das Herausfinden der Fehlermeldung kann sehr einfach sein, besonders wenn Sie das Skript in einer
Hinweis:<\/B> Überprüfen Sie unbedingt doppelt und dreifach Dateipfade oder lange Zeichenketten, da ein Tippfehler Fehler verursachen kann. Kopieren und Einfügen langer Zeichenketten minimiert Tippfehler.<\/P>Hinweis:<\/B> Wenn der Fehler auf Zeile 1 gemeldet wird, liegt das Problem möglicherweise nicht am Code selbst, sondern an einer anderen Abhängigkeit (zum Beispiel existiert das importierte Modul nicht).<\/P>*Warum verursachen try<\/B>- und except<\/B>-Anweisungen Probleme beim Überprüfen von Fehlermeldungen? Try<\/B> und except<\/B> werden für Fehlerüberprüfung und Validierungsverfahren verwendet und wenn sie ohne Möglichkeit zur Ausgabe der Fehlermeldung eingebaut sind, können sie den Fehler verschleiern und somit schwer auffindbar machen. Weitere Informationen zu Try/Except-Anweisungen bei der Fehlerbehandlung finden Sie im ArcGIS Desktop 9.3 Hilfe-Thema mit dem Titel
Problem 2: Falsche Python-Version(en)<\/U><\/P>Python ist eine flexible Sprache und erlaubt die Installation mehrerer Versionen auf einem Rechner. Dies kann Probleme verursachen, wenn Programme wie ArcGIS eine bestimmte Version benötigen und der Rechner versucht eine andere zu verwenden. Jede ArcGIS-Version benötigt eine spezifische Python-Version auf dem Rechner und installiert diese Version beim Installieren von ArcGIS Desktop, ArcGIS Engine oder ArcGIS Server. Unten ist eine Tabelle mit ArcGIS-Versionen und den jeweiligen Python-Versionen:<\/P>ArcGIS-Version<\/TH>Python-Version<\/TH><\/TR>9.0<\/TD>2.1<\/TD><\/TR>9.1<\/TD>2.1<\/TD><\/TR>9.2<\/TD>2.4<\/TD><\/TR>9.3\/_9.3.1<\/TD>2.5<\/TD><\/TR>10.0<\/TD>2.6<\/TD><\/TR><\TBODY>Okay, jetzt wo wir wissen welche Version wir haben sollten: Wie prüfen wir welche Version tatsächlich verwendet wird? Jeder Dateityp unter Windows verwendet ein Standardprogramm zum Ausführen dieses Dateityps. Im Fall von Python ist dies python.exe<\/B>, das sich typischerweise im Systemordner befindet, in dem Python installiert wurde. Standardmäßig installiert ArcGIS seine Version im Verzeichnis C:PythonXX und python.exe befindet sich in diesem Verzeichnis.<\P>Um zu prüfen welche Python-Version verwendet wird, öffnen Sie den Windows Explorer und gehen zu Extras > Ordneroptionen > Registerkarte Dateitypen oder wenn Sie Windows Vista oder 7 verwenden, gehen Sie zur Systemsteuerung > Standardprogramme > Dateitypzuordnung und suchen dort die Erweiterung PY<\B>. Durch Auswahl sehen Sie welches Programm zum Ausführen dieses Dateityps verwendet wird; unter Windows XP können Sie durch Klicken auf "Erweitert" den Pfad zur Datei unter der Aktion "Öffnen" sehen.<\P>Dateityp-Dialogfelder unter Windows XP<\B>
Neben einer falschen Python-Version besteht auch die Möglichkeit, dass die verwendete IDE-Version falsch ist. Dies gilt besonders für PythonWin. Um zu überprüfen welche Version von PythonWin verwendet wird und sicherzustellen dass sie zur richtigen ArcGIS-Version passt, starten Sie PythonWin mit geöffnetem Interactive Window<\B>, dort wird die Version angezeigt.<\P>Problem 3: Fehlende Abhängigkeiten oder Module<\U>
Beim Arbeiten mit jeder Programmiersprache gibt es Zeiten in denen externe Bibliotheken oder Module notwendig sind. Wenn Sie diese Bibliotheken verwenden, muss das Skript sie am definierten Ort finden können.<\P>
Python installiert standardmäßig alle Module (PY-Dateien) im Lib<\B>-Ordner des Python-Installationsverzeichnisses. Wenn Sie ein benutzerdefiniertes Modul verwenden, stellen Sie sicher dass es am richtigen Ort auf dem Rechner installiert ist, da dies variieren kann. Zum Beispiel wird das Modul arcgisscripting<\B> im bin<\B>-Verzeichnis des ArcGIS-Installationsordners installiert und nicht im Python-Installationsverzeichnis.<\P>Dabei sind Module einfach andere Dateien vom Typ PY, PYC oder PYD<\B> auf dem Rechner und werden durch die Anweisung import<\B> im Code hinzugefügt.<\P>Zum Schluss denken Sie daran: Die ArcGIS-Benutzergemeinschaft sowie Esri Support Services sowohl in den USA als auch unsere internationalen Vertriebspartner stehen Ihnen zur Unterstützung bereit. Schauen Sie unbedingt im
- James U., Support Analyst - SDK-Gruppe, Esri Support Services<\P><\BODY>
Angemeldete Mitglieder können Beiträge verfassen, Updates folgen und mehr. Neu hier? Registrieren Sie ein kostenloses Konto.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.