Umstellung von Python 2 auf Python 3
Ab rmDATA GeoMapper Version 2023.3 wird für das Skripting Python 3 eingesetzt. Daher ist es notwendig, alle Skripts von Python 2 auf Python 3 zu konvertieren.
Im Folgenden sind die notwendigen Änderungen beschrieben. Alternativ können Sie auch ein Tool nutzen und alle Skripts automatisch konvertieren lassen.
Notwendige Änderungen für IronPython 3
- Aufruf von print:
✎ | Python 2
Python 3
|
- Formatierung und Ausgabe von Gleitkommazahlen: die Anzahl der Nachkommastellen muss jetzt immer angegeben werden.
✎ | Python 2
Python 3
Korrekte Angabe in Python 3, z.B. auf 4 Nachkommastellen:
|
- Mit 0 beginnende Dezimalwerte sind nicht mehr erlaubt. Die Angabe von
month = 06
führt zu einer Fehlermeldung.
✎ | Korrekte Angabe: |
- Die Bibliothek vectors.py ist nicht mehr Teil des Standard-Umfangs. GeoMapper installiert diese Bibliothek trotzdem mit. Die Klasse „Vector“ kann daher weiterhin verwendet werden.
Migration von Skripten von IronPython 2.7.5 auf 3.4.10
Für die massenhafte Migration von py-Dateien steht ein Tool zur Verfügung. So gehen Sie vor:
- Download und Installation Python 3.4: https://www.python.org/downloads/release/python-340/
- Danach steht python.exe in der Kommandozeile zur Verfügung
- Aufruf Kommandozeile: python.exe 2to3.py „Skriptpfad.py" –w
- Die Datei wird migriert, die alte Datei wird als Skriptpfad.py.bak gesichert
- Es funktioniert auch als Batch-Datei (bat):
python.exe 2to3.py "C:\Samples\TextNew.py" -w
python.exe 2to3.py "C:\Samples\Union.py" -w
python.exe 2to3.py "C:\Samples\werteEingabe.py" -w
pause
ⓘ | Speichern Sie die bat-Datei im Format „Westeuropäischer Zeichensatz (Codepage 850)“ ab. Dann funktioniert auch die Migration von Skripten mit Umlauten im Pfad. |
⚠ | Eine manuelle Nachbearbeitung inkl. einer Funktionspruefung des Skripts ist notwendig! |
ⓘ | Die automatische Migration ändert |