So arbeiten Sie in Vertec mit Python 3
Ab Vertec 6.8.0.17 kann Vertec parallel zum bisherigen Python 2 Code auch Python 3 Code verarbeiten.
Parallel bedeutet, dass im gleichen Vertec sowohl Python 2 als auch Python 3 Scripts ausgeführt werden können. Die gesamte bestehende Codebasis bleibt also unverändert lauffähig. Neuer Code hingegen kann (und soll) in Python 3 geschrieben werden. Wie das funktioniert, wird hier nachfolgend beschrieben.
Bei der Registrierung von Scripts in Vertec kann neu unter Plattform ausgewählt werden, ob es sich um ein Script in Python 2 oder in Python 3 handelt:

Wird Code aus Scripts als Module aufgerufen, muss beachtet werden, dass der Einstiegspunkt die Python Version definiert. Der aufgerufene Code muss also mit dem aufrufenden Code kompatibel sein. In diesen Fällen wird die Plattform bei den aufgerufenen Modulen ignoriert.
Bei OCL Call Operatoren, wo Python Code aus OCL aufgerufen wird, richtet sich die Python Version nach der Plattform des aufgerufenen Modulscripts.
Bei List Controllern und Custom Renderern richtet sich die Python Version ebenfalls nach der Plattform der Registration. Wichtig ist hier zu beachten, dass Custom Renderer, welche Werte aus List Controllern aufrufen, mit derselben Python Version arbeiten.
Code, welcher nicht nicht in einem Skripteintrag residiert (z.B. in Python-Code für Office-Berichte oder in Funktionen wie vtcapp.scriptexecute()) wird aus Gründen der Rückwärtskompatibilität als Python 2 Code interpretiert. Möchte man solchen Code in Python 3 schreiben und ausführen, kann in der ersten Zeile der Markup python3 als Kommentar angegeben werden. In diesem Fall wird der Code als Python 3 Code interpretiert.
# python3 # hier kommt dann der Python 3 Code
Im Script Editor kann zwischen Python 2 und Python 3 gewechselt werden. Dafür gehen Sie zum Menü oben rechts unter Einstellungen und klicken auf Script Editor....
Es öffnet sich der Scripteditor, der nicht mit einem Scripteintrag verknüpft ist. Bei einem Scripteditor eines Scriptseintrag erscheint dieser Button nicht.

Der eingegebene Code wird dann entsprechend ausgeführt, und auch die Konsole rechts interpretiert den Code in der eingestellten Python Version.
Die Python Konsole, welche via Funktionstaste F3 (oder über das Menü Einstellungen) unterhalb der aktuellen Seite ein- und ausgeblendet wird, interpretiert die Eingabe ab Vertec 6.8.0.17 immer als Python 3 Code. Hier kann also ab dieser Version nur noch Python 3 Code verwendet werden.
Welche Python Module im Restrict Scripting auf der Whitelist für Python 2 und/oder Python 3 stehen und somit in Scripts importiert werden können, finden Sie im Artikel Scripting für Cloud-Sessions einschränken.