Python in webbrowser rechtstreeks vanuit HTML!!!! | door Anuj Karn

Python in webbrowser rechtstreeks vanuit HTML!!!!  |  door Anuj Karn
Python in webbrowser rechtstreeks vanuit HTML!!!!  |  door Anuj Karn
Foto door Richy Geweldig op Unsplash

Ben je een datawetenschapper of een ontwikkelaar die graag Python gebruikt zoals ik? Sommige van mijn ideeën verlaten de keuken niet omdat Javascript bij het bouwen betrokken is. Hoe mooi zou het zijn als we websites in Python zouden kunnen schrijven? Verbazingwekkend genoeg kondigde Peter Wang, CEO van Anaconda, op PyCon US 2022 een glanzende nieuwe technologie aan, PyScript genaamd, waarmee gebruikers Python rechtstreeks in de browser kunnen schrijven!!!.

Omdat JavaScript de belangrijkste programmeertaal is om een ​​webbrowser te laten werken, en een webpagina interactief, wordt Python meestal gebruikt voor datawetenschap, machine learning en kunstmatige intelligentie.

Zelfs als we back-end-infrastructuren hebben zoals Django en Flask, of generatoren voor statische sites zoals Jekyll, zit Python meestal achter JavaScript voor webontwikkeling.

PyScript is een experimentele maar veelbelovende nieuwe technologie die de Python-runtime beschikbaar maakt als scripttaal in WebAssembly-compatibele browsers.

PyScript, ontwikkeld door Anaconda, is, zoals Peter al zei in zijn toespraak,

Een systeem voor het interleaven van Python in HTML (zoals PHP).

Dit betekent dat u Python-code in HTML kunt schrijven en uitvoeren, Javascript-bibliotheken in PyScript kunt aanroepen en al uw webontwikkeling in Python kunt doen.

Volgens PyScript.net:

“PyScript is een raamwerk waarmee gebruikers rijke Python-applicaties in de browser kunnen maken met behulp van de HTML-interface en de kracht van Pyodide, WASM en moderne webtechnologieën. Het PyScript-framework biedt gebruikers op elk ervaringsniveau toegang tot een expressieve, gemakkelijk te leren programmeertaal met talloze toepassingen.”

PyScript bestaat uit één JavaScript-bestand dat u aan een webpagina kunt toevoegen. Dit omvat het laden van de basis PyScript-runtime en voegt automatisch ondersteuning toe voor aangepaste tags die in PyScript worden gebruikt.

Hier is een eenvoudig voorbeeld van een “hallo, wereld” -project in PyScript:




rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
defer src="https://pyscript.net/unstable/pyscript.js">

output="out">
print("Hello world")

id="out">

Thee script tag wordt gebruikt om de PyScript-functionaliteit te laden. Thee pyscript.css stylesheet voegt het laden van de Python-runtime toe en initialiseert tijdens de laadtijd van de pagina.

Python-code moet worden ingesloten in py-script label. De code moet worden opgemaakt volgens de conventies van Python voor inspringen.

We kunnen bibliotheken importeren met behulp van: py-env tag hetzelfde als onze requirements.txt.

Het kan er ongeveer zo uitzien


- matplotlib
- numpy

Als u een Jupyter Notebook-fan bent, kunt u ook gebruik maken van py-repl tag om de live coderingsomgeving in de browser voor Python te bekijken. Meestal wordt het gebruikt voor wiskunde en statistiek.

py-repl genereert een invoerveld op een webpagina dat functioneert als een zeer eenvoudige versie van een Jupyter Notebook-omgeving. Hier is een voorbeeld van een repl-tag in actie:


lang="en">

rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
defer src="https://pyscript.net/alpha/pyscript.js">

pyscript REPL


Tip: press Shift-ENTER to evaluate a cell



id="my-repl" auto-generate="true">


Uitvoer op de browser is:

Nu denk ik dat je een goed idee hebt van wat PyScript is, hoe het werkt en wat het te bieden heeft. Zoals het er nog in zit alfa fase laat het enkele veelbelovende resultaten zien.

PyScript is ongetwijfeld een opwindende nieuwe technologie waarmee u Python-code in de webbrowser kunt uitvoeren.

Wat doen? jij denk aan Python? Zal het ooit echt JavaScript in de browser vervangen? Ga je het eens proberen in je volgende project?

Bekijk hier de demo:

Neem contact met mij op via linkedin: https://www.linkedin.com/in/anuj-karn

Geef uw mening hierover alstublieft.

Leave a Reply

Your email address will not be published.