Pyodide und Brython: Python direkt im Browser ausführen

Du hast genug von JavaScript, wenn du nur schnell etwas Python testen willst? Mit Pyodide und Brython kannst du Python‑Code direkt im Browser laufen lassen – ohne Server, ohne Installationen. Beide Projekte machen das möglich, aber sie tun es auf unterschiedliche Weise. In diesem Artikel zeigen wir dir, wann du welches Tool nutzt, wie du loslegst und worauf du achten solltest.

Was ist Pyodide und wie funktioniert es?

Pyodide ist ein Port von CPython, kompiliert nach WebAssembly. Das bedeutet, dass die gesamte Python‑Laufzeit, inklusive vieler Bibliotheken wie NumPy oder pandas, als .wasm-Datei im Browser läuft. Du lädst die Pyodide‑JS‑Datei, initialisierst das Runtime‑Objekt und kannst dann über pyodide.runPython() beliebigen Code ausführen.

Ein typisches Setup sieht so aus:

<script src="https://cdn.jsdelivr.net/pyodide/v0.26.1/full/pyodide.js"></script>
<script>
  async function start() {
    let pyodide = await loadPyodide();
    let result = pyodide.runPython('2 + 2');
    console.log(result);
  }
  start();
</script>

Das Laden dauert ein paar Sekunden, weil das WebAssembly‑Modul groß ist. Sobald es geladen ist, kannst du heavy‑weight Bibliotheken nutzen, ohne etwas auf dem Server zu installieren.

Was ist Brython und wo liegt der Unterschied?

Brython (Browser Python) ist leichter. Statt einen kompletten CPython‑Interpreter zu emulieren, wird Python‑Code in JavaScript übersetzt. Das Ergebnis ist schneller zu laden, hat aber weniger Standardbibliotheken. Für kleine Skripte, DOM‑Manipulation oder Lernzwecke ist Brython perfekt.

Ein einfaches Beispiel:

<script src="https://cdn.jsdelivr.net/npm/[email protected]/brython.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/brython_stdlib.js"></script>
<script>brython();</script>
<script type="text/python">
from browser import document
document["output"].text = "Hallo aus Brython!"
</script>
<div id="output"></div>

Hier wird das Ergebnis sofort im DOM angezeigt. Du brauchst keine async‑Initialisierung, das macht den Einstieg super simpel.

Worauf du achten solltest: Brython unterstützt nicht alle Bibliotheken, vor allem keine C‑Erweiterungen. Wenn du also numerische Berechnungen mit NumPy brauchst, bleibt Pyodide die bessere Wahl.

Praxis‑Tipps für den Einsatz

1. Wähle das richtige Tool: Für Datenanalyse, Machine‑Learning‑Prototypen oder when du Bibliotheken wie matplotlib brauchst, setze Pyodide ein. Für kleine Interaktionen, Formulare oder Lernaufgaben reicht Brython.

2. Cache nutzen: Beide Bibliotheken können im Browser-Cache gespeichert werden. Beim nächsten Besuch ist das Laden fast sofort.

3. Ausgabe kontrollieren: Verwende console.log() oder das DOM, um Ergebnisse anzuzeigen. Vermeide zu große Datenmengen in der Konsole, das verlangsamt den Browser.

4. Sicherheitsaspekte: Da der Code im Browser läuft, hast du keinen direkten Zugriff auf das Dateisystem. Das ist gut für die Sicherheit, aber du musst Eingaben richtig validieren, gerade wenn du user‑generated Code ausführst.

5. Performance messen: Nutze die Browser‑Entwicklertools, um Ladezeit und Ausführungszeit zu prüfen. Oft reicht ein kleiner Code‑Optimierungsschritt, um den Unterschied zwischen „akzeptabel“ und „blitzschnell“ zu machen.

Mit diesen Grundlagen kannst du sofort loslegen und Python im Browser ausprobieren. Ob du nun Daten visualisieren, interaktive Tutorials bauen oder einfach nur experimentieren willst – Pyodide und Brython öffnen neue Möglichkeiten, ohne einen Server aufzusetzen.

Probier es aus, spiel ein bisschen rum und finde heraus, welches Tool für deine Idee am besten passt. Viel Spaß beim Coden!

26

Sep

2025

Python statt JavaScript im Web: Wie, wann und warum?

Python statt JavaScript im Web: Wie, wann und warum?

Erfahre, ob Python JavaScript im Browser ersetzen kann, welche Tools es gibt, welche Vor‑ und Nachteile bestehen und wann du Python für die Frontend‑Entwicklung sinnvoll einsetzen solltest.