Introduzione a PyScript, ora puoi eseguire script Python in HTML
Sei un data scientist o uno sviluppatore che utilizza principalmente Python?
Sei geloso degli sviluppatori che scrivono codice Javascript e creano siti Web?
Quanto sarebbe bello se potessimo scrivere siti Web in Python?
Sorprendentemente, al PyCon US 2022, il CEO di Anaconda Peter Wang ha annunciato una nuova fantastica tecnologia chiamata PyScript che consente agli utenti di scrivere Python e molti linguaggi nel browser.
Cos'è PyScript?
Sviluppato dal team Anaconda che include Peter Wang, Fabio Pliger e Philipp Rudiger, PyScript è, come ha menzionato Peter nel suo discorso, "un sistema per intrecciare Python in HTML (come PHP)". Ciò significa che puoi scrivere ed eseguire codice Python in HTML, chiamare librerie Javascript in PyScript ed eseguire tutto il tuo sviluppo web in Python. Sembra fantastico!
Cosa significa l'utilizzo di PyScript per gli scienziati dei dati?
Ovviamente, con PyScript, ora possiamo scrivere Python (e possibilmente altri linguaggi) in HTML e creare applicazioni web. PyScript porta la potenza di Python a una gamma più ampia di sviluppatori e creatori front-end.
Come ha detto Peter nella sua presentazione, "Il browser web è l'ambiente informatico portatile più diffuso al mondo." In effetti, quasi tutti hanno accesso a un browser web, sia su un computer che su un telefono cellulare.
Ciò significa che chiunque può accedere e iniziare a programmare senza barriere infrastrutturali.
Con PyScript, non dobbiamo più preoccuparci della distribuzione. PyScript fornisce il "cambiamento architettonico oltre il cloud". Tutto accadrà nel tuo browser web. In qualità di data scientist, possiamo condividere i nostri dashboard e i nostri modelli in un file html, che eseguirà codice ogni volta che altri aprono il file in un browser web.
in poche parole questa immagine qui sotto ti farà capir meglio che potenza ha PYSCRIPT
Come Funziona PyScript?
PyScript è attualmente basato su Pyodide , che è una "port di CPython su WebAssembly/Emscripten". PyScript supporta la scrittura e l'esecuzione di codice Python in un browser e fornirà supporto per altri linguaggi in futuro.
Che cos'è WebAssembly e perchè è usato in Pyscript?
La tecnologia fondamentale che permette di scrivere siti web in Python è WebAssembly. Quando WebAssembly è stato originariamente sviluppato, i browser Web supportavano solo Javascript.
Rilasciato per la prima volta nel 2017, WebAssembly è diventato rapidamente lo standard ufficiale del World Wide Web Consortium (W3C) entro il 2019. Include un linguaggio in formato testo .wat leggibile dall'uomo, che viene poi convertito in un formato binario .wasm che può essere eseguito dai browser. Questo ci consente di scrivere codice in qualsiasi linguaggio, compilarlo in WebAssembly e quindi eseguirlo in un browser web.
Come cita il sito Ufficiale di PyScript
PyScript è un framework che consente agli utenti di creare ricche applicazioni Python nel browser utilizzando l'interfaccia HTML e la potenza di Pyodide , WASM e le moderne tecnologie web. Il framework PyScript offre agli utenti di ogni livello di esperienza l'accesso a un linguaggio di programmazione espressivo e di facile apprendimento con innumerevoli applicazioni.
Quali sono i vantaggi di PyScript?
Python nel browser: abilita contenuto drop-in, hosting di file esterni e hosting di applicazioni senza fare affidamento sulla configurazione lato server
Ecosistema Python: esegui molti pacchetti popolari di Python e lo stack scientifico (come numpy, panda, scikit-learn e altro)
Python con JavaScript: comunicazione bidirezionale tra oggetti e spazi dei nomi Python e Javascript
Gestione dell'ambiente: consente agli utenti di definire quali pacchetti e file includere per l'esecuzione del codice della pagina
Sviluppo di applicazioni visive: usa componenti dell'interfaccia utente curati prontamente disponibili, come pulsanti, contenitori, caselle di testo e altro ancora
Framework flessibile: un framework flessibile che può essere sfruttato per creare e condividere nuovi componenti collegabili ed estensibili direttamente in Python
Come cita il sito Ufficiale di PyScript
Tutto questo per dire... PyScript è solo HTML, solo un po' (va bene, forse molto) più potente, grazie al ricco e accessibile ecosistema di librerie Python. In breve, la nostra missione è portare la programmazione al 99%.
Come utilizzare PyScript il Tutorial
Per creare la tua prima pagina HTML in grado di eseguire codice Python ti basterà in primis importare gli script necessari.
<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
Una volta completato, PyScript è disponibile per il documento corrente.
Attualmente PyScript è ancora un progetto agli albori e ci sono fondamentalmente tre componenti in fase di implementazione:
<py-script>
<py-repl>
<py-env>
<py-script> può essere utilizzato per definire il codice da eseguire nel contesto della pagina web, l'output può essere inserito in un comune <div> .
<py-repl> può essere utilizzato per inserire blocchi REPL (READ - EVAL - PRINT - LOOP) che consentono all'utente di inviare input ed eseguire codice.
Infine, <py-env> può essere utilizzato per importare le famosissime librerie di Python.
Sono supportati vari pacchetti Python, come NumPy, la libreria di analisi dei dati Pandas e Scikit-learn per l'apprendimento automatico.
La tua prima pagina HTML con PyScript "Ciao Mondo"
Apri un qualsiasi Editor di testo ( Anche notepad va bene )
Crea un Nuovo Documento con estensione .html
Copia e incolla il codice qui sotto e salva il file
<!DOCTYPE html>
<html lang="it">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<title>La mia prima Pagina HTML con PyScript</title>
<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
</head>
<body>
<center>
Ciao Mondo! <br>
<py-script>
from datetime import datetime
now = datetime.now()
print("Ciao a tutti sono le : \n")
now.strftime("%m/%d/%Y, %H:%M:%S")
</py-script>
</center>
</body>
</html>
Ecco il risultato quando aprirete il file nel vostro Browser, o lo caricherete sul vostro server.
Qui sotto c'è l' iframe con il codice sopra scritto.
Un altro modo in cui puoi far eseguire codice Python in py-script proprio come fanno in un file Python è usare un file Python come questo come codice sorgente:
<py-script src"./filePython.py"> </py-script>
Davvero una RIVOLUZIONE !!!
Alcuni Svantaggi di PyScript
Come sottolineato dai suoi sviluppatori, PyScript presenta ancora alcune limitazioni, la prima delle quali è legata al tempo e alla larghezza di banda necessari per scaricare e configurare componenti che consentano la manipolazione della pagina che lo contiene.
Tuttavia, questo problema si verifica solo dopo il primo caricamento e quindi il componente viene archiviato nella cache, risparmiando tempo e risorse.
In secondo luogo, PyScript non supporta ancora le build automatiche, quindi per il momento possono essere utilizzate solo librerie di terze parti scritte in puro Python.
Il futuro di PyScript
Proprio come cita il creatore di Pyscript :
PyScript porta Python nel browser. Sono molto entusiasta di questa nuova innovazione e non vedo l'ora di vedere come si svilupperà nella community. Resta sintonizzato per molte nuove fantastiche funzionalità in arrivo!
Il nostro parere su PyScript
Il programma PyScript è statuto implementato da Anaconda e PyScript consentirà ai ricercatori di effettuare programmi Python (e molti altri) esplicitamente direttamente nelle pagine HTML. Ma bisogna considerare che Attualmente, PyScript è in una fase iniziale.
Maggiori dettagli e alcuni esempi di programmazione può essere trovato nel repository GitHub. I file necessari per scrivere pagine HTML con codice incorporato possono essere scarica dalla pagina del progetto che fornisce anche le istruzioni per l’installazione.
Comments