Jetzt hat es mich doch erwischt. Bei all meiner Freude über den gelungenen Umzug von (Anaconda-) Python 2.7 auf (Anaconda-) Python 3.5 hatte ich übersehen, daß VPython, die Python-Bibliothek, die das Programmieren von (animierten) 3D-Objekten gewöhnlichen Sterblichen zugänglich machen will, (noch?) nicht mit Python 3 läuft. Ich nutze sie nicht häufig, aber hin und wieder schon und das Programmieren mit ihr bringt auch viel Spaß. Also habe ich nach einem Ausweg gegoogelt und eine Lösung hier gefunden ( ca. 300 KB).
Es läßt sich leider nicht vermeiden, es muß eine separate Python 2.7-Umgebung installiert werden. Anaconda und der dazugehörende Paket-Installer conda
weisen dafür jedoch einen einfachen Weg auf: Wenn man im Terminal
conda create -n python2 python=2.7 anaconda
eingibt, wird eine separate Python 2.7 Umgebung (aktuell Python 2.7.12) heruntergeladen und installiert. Diese kann man nach (hoffentlich) erfolgreicher Installation mit
source activate python2
aktivieren.
Wie man am Screenshot sieht, verändert sich auch der Prompt im Terminal, damit auch visuell deutlich wird, daß man in einer speziellen Umgebung arbeitet. Und der Aufruf python
öffnet nun tatsächlich ein Python 2.7, das heißt, in dieser Umgebung ist das Default-Python dieses Python 2.7. Daher kann man nun mit
conda install -c https://conda.binstar.org/mwcraig vpython
im Terminal die Installation von VPython anstoßen. Dies dauert ein Weile, weil auch noch ein paar zusätzliche Abhängigkeiten – unter anderem auch ein wxPython – heruntergeladen werden. Danach ist man aber bereit, mit VPython zu arbeiten. VPython benötigt eine spezielle Version der IDLE-IDE und -Shell, die vidle
genannt wird. Sie ist installiert und kann mit
vidle
im Terminal aufgerufen werden. Zum Test habe ich dann dort
from __future__ import print_function, division
from visual import *
sphere()
eingegeben und mit Run Module
gestartet. Wie der Screenshot zeigt, beweist das Ergebnis, daß VPython installiert ist und läuft.
Ich hätte es natürlich gerne gehabt, wenn alles in einer Python-3-Umgebung gelaufen wäre und diese Klimmzügen unnötige gewesen wären. Aber da wir nicht in der besten von allen Welten leben, ist dieser Workaround, der sicher auch noch für andere, nicht unter Python 3 laufenden Modulen nötig ist, wenigstens ein Ausweg aus diesem (selbstverschuldeten) Python-Dilemma, in dem sich die Python-Macher mit der – in meinen Augen unnötigen – fehlenden Rückwärtskompatibiltät hineingeritten haben.
Wenn man dann aus der Python-2-Umgebung wieder herauswill, einfach
source deactivate
in das Terminal hineinhacken und schon verschwindet der Python2-Prompt und der Aufruf von python
bringt wieder das gewohnte (Anaconda-) Python 3.
Über …
Der Schockwellenreiter ist seit dem 24. April 2000 das Weblog digitale Kritzelheft von Jörg Kantel (Neuköllner, EDV-Leiter, Autor, Netzaktivist und Hundesportler — Reihenfolge rein zufällig). Hier steht, was mir gefällt. Wem es nicht gefällt, der braucht ja nicht mitzulesen. Wer aber mitliest, ist herzlich willkommen und eingeladen, mitzudiskutieren!
Alle eigenen Inhalte des Schockwellenreiters stehen unter einer Creative-Commons-Lizenz, jedoch können fremde Inhalte (speziell Videos, Photos und sonstige Bilder) unter einer anderen Lizenz stehen.
Der Besuch dieser Webseite wird aktuell von der Piwik Webanalyse erfaßt. Hier können Sie der Erfassung widersprechen.
Diese Seite verwendet keine Cookies. Warum auch? Was allerdings die iframes
von Amazon, YouTube und Co. machen, entzieht sich meiner Kenntnis.
Werbung