Python-editor (Uitvoeren in browser)
Schrijf en voer echte Python uit in uw browser — geen installatie, geen server, geen account. Aangedreven door Pyodide, een volledige CPython-build gecompileerd naar WebAssembly.
1.151 weergaven
Hoe het werkt
Dit draait een echte CPython-interpreter — dezelfde referentie-implementatie waarop het python3-commando op uw desktop is gebaseerd — gecompileerd naar WebAssembly via Pyodide, één keer geladen in uw browser en volledig op uw apparaat uitgevoerd. Uw code bereikt de server van deze site nooit; er is geen sandboxed subprocess op een backend, geen wachtrij, niets om te uploaden. De eerste uitvoering downloadt de Python-runtime (ongeveer 12 MB), die uw browser vervolgens cachet, zodat elke uitvoering daarna — en elke uitvoering bij een later bezoek — direct start in plaats van iets opnieuw te downloaden.
Omdat het echte CPython is en geen gesimuleerde subset, gelden Pythons werkelijke semantiek precies zoals lokaal. Dat omvat de bepalende syntaxisregel: Python bepaalt de blokstructuur — waar een functieblok, lus of if-tak begint en eindigt — puur op basis van het inspringniveau, in tegenstelling tot C, Java of JavaScript, die daarvoor {}-accolades gebruiken. Tabs en spaties door elkaar gebruiken binnen één blok is precies het soort ding dat deze echte interpreter zal afwijzen met een IndentationError in plaats van stilzwijgend te gokken, omdat Python 3 weigert code uit te voeren waarvan de inspringing dubbelzinnig is.
Goed om te weten
De volledige Python-standaardbibliotheek wordt met de runtime meegeleverd — math, json, re, datetime en de rest — dus alles wat alleen de standaardbibliotheek nodig heeft, draait ongewijzigd. Externe pakketten van PyPI zijn een aparte kwestie: ze worden niet vooraf geladen, omdat het bundelen ervan de eerste download voor elke bezoeker zou opblazen, ongeacht of die ze nodig heeft.
Veelgestelde vragen
Waarom duurt de eerste uitvoering enkele seconden?
Uw browser downloadt en initialiseert de WebAssembly Python-runtime de eerste keer — daarna wordt deze gecachet, en starten latere bezoeken (en verdere uitvoeringen op dezelfde pagina) direct.
Kan ik pakketten zoals numpy of requests installeren?
Deze tool voert alleen de standaardbibliotheek uit. Pyodide ondersteunt wel het installeren van pure-Python-pakketten via micropip, maar dat vereist een extra downloadstap en valt buiten het bereik van deze lichtgewicht tool — gebruik daarvoor rechtstreeks de eigen console van Pyodide.
Draait mijn code op uw server?
Nee — er wordt niets ergens geüpload. De Python-interpreter draait als WebAssembly in uw eigen browsertab, net zoals elke andere JavaScript op deze pagina.
Waarom krijg ik een IndentationError bij het mengen van tabs en spaties?
Python heeft geen accolades om aan te geven waar een blok begint of eindigt — het inspringniveau ís de blokstructuur. Python 3 weigert bewust een bestand uit te voeren waarin tabs en spaties inconsistent door elkaar worden gebruikt tussen regels, in plaats van te gokken wat u bedoelde, en dat is waarom deze echte Python-interpreter een IndentationError geeft in plaats van uw code stilzwijgend verkeerd te interpreteren.
Is dit echt Python, of een beperkte JavaScript-herimplementatie?
Het is echte CPython — dezelfde op C gebaseerde interpreter die Python op servers en desktops uitvoert — herbouwd naar WebAssembly zodat het binnen een browser-sandbox kan draaien. Taalgedrag, foutmeldingen en de standaardbibliotheek komen allemaal overeen met een normale lokale installatie.
Vergelijkbare tools
Probleem melden
Python-editor (Uitvoeren in browser)
Reacties
Nog geen reacties — schrijf de eerste!