Virtuelle Umgebungen für P5 (Python) und Py5

Python
JupyterLab Desktop
Visual Studio Code
P5
Py5
Autor:in

Jörg Kantel

Veröffentlichungsdatum

28. Juni 2024

Natürlich mußte ich die vor wenigen Tagen gemachte Entdeckung, daß man mit Conda Environments sich nicht in einem unübersichtlichen Dschungel verirrt, sondern einen aufgeräumten Garten mit wiederauffindbaren Beeten anlegt, sofort testen. Was lag näher, als je eine Umgebung für P5 (Python) und Py5 anzulegen, denn diese beiden Processing-ähnlichen Python-Umgebungen sind sich so ähnlich, daß man schon Überschneidungen befürchten kann. (Es gibt meines Wissens zwar keine, aber sicher ist sicher …)

P5 (Python)

P5 (Python) hatte ich das erste Mal 2018 auf dem Schirm und dann 2021 noch einmal angefaßt. Doch das Teil schien mir damals – trotz einiger Fortschritte – noch nicht wirklich ausgereift. Erst als es mir im letzten Jahr (im Zusammenhang mit Python Online-Editoren (nicht nur) für den Raspberry Pi, sondern auch für mein Chromebook) wieder unterkam, zeigten erste Tests, daß das Teil nun langsam erwachsen wird.

 

Also habe ich P5 (Python) eine Conda-Umgebung spendiert, die ich sinnvollerweise auch p5 genannt habe. Das war nicht ganz so einfach wie ich gedacht hatte, da P5 (Python) einige Abhängigkeiten besitzt, die leider von pip und conda nicht automatisch aufgelöst werden. Daher habe ich mehrere Schritte benötigt:

  1. Im Anaconda-Navigator mit create eine Umgebung p5 angelegt.
  2. Da P5 (Python) intern GLFW benötigt, um mit OpenGL zu kommunizieren, mit brew install glfw dieses installert.
  3. Dann mußte ich mit conda separat Pillow hinzufügen, da pip in der Umgebung Pillow nicht installieren konnte.
  4. Last but not least konnte ich dann mit pip install p5 endlich auch P5 (Python) mit den restlichen Abhängigkeiten installieren.

Wie die Bilder oben zeigen (ein Klick darauf führt je auf eine Seite mit Vergrößerungen), lief danach P5 (Python) in Visual Studio Code in der neuen Umgebung, nachdem ich diese über die Command Palette (⇧⌘P) mit Python: Select Interpreter ausgewählt hatte. Im VSCode Terminal wie auch in der Statuszeile rechts unten wird der aktive Interpreter/die aktive Umgebung angezeigt.

Py5

Das Anlegen einer virtuellen Umgebung für Py5 verlief dagegen bedeutend unkomplizierter. Die einzige, unvorhergesehene Schwierigkeit war, daß mein frisch installiertes, aktuelles macOS Sonoma von Hause aus kein Java mehr mitbringt. (Meine bisherigen (älteren) macOS hatte alle noch ein per Default mitgeliefertes Java installiert.) Hier habe ich es mir allerdings einfach gemacht und – wie auf Stack Overflow empfohlen – ein aktuelles Java mit Homebrew aufgespielt:

brew install Java

Danach darf man aber nicht vergessen, mit

sudo ln -sfn /opt/homebrew/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk

auch noch den symlink zu setzen, damit das Betriebssystem das Java auch findet.

Der Rest war dann – dank der hervorragenden Py5-Dokumentation, die explizit behandelt, wie man Py5 in einer Anaconda- oder Miniconda-Umgebung installiert – ein Kinderspiel. Analog zur P5 (Python)-Umgebung p5 oben wollte ich, daß diese py5 heißt, und

conda env create -n py5 -f http://py5coding.org/files/install/py5_environment.yml

legte diese dann zuverlässig an.

 

Die Bilder zeigen (auch hier führt ein Klick wieder auf eine Seite mit Vergrößerungen), daß diese Umgebung nicht nur in Visual Studio Code, sondern auch mit Notebooks in JupyterLab Desktop funzt. In JupyterLab Desktop wählt man die Umgebung in dem Menü rechts oben aus (neben dem »Hamburger-Menü« rechts außen).

Ich sehe auch keinen Grund, warum die virtuellen Umgebungen nicht auch mit Spyder spielen sollten. Das steht als nächstes auf meiner Testliste. Ihr merkt also: Ich habe zu tun. Still digging!


Bild: Python in neuer Umgebung, erstellt mit Scenario. Prompt: »A python with ((glasses)) and a pointer in front of a chart with diagrams in an office. Shelves with books on the walls. It’s a sunny morning«, Modell: Stable Diffusion XL, Style: Stylized Fantasy + Whimsical Storybook.