anúncios

segunda-feira, 9 de maio de 2022

Conhecendo o PyScript

O que é PyScript?

PyScript é um projeto que executa scripts em Python diretamente na página web.

Sabemos que Python é uma das linguagens de programação mais populares pela sua facilidade de aprendizado e também ser considerada a caligrafia do programador, dos que não tem costume de indentar códigos.

Também o uso do Python cresceu bastante em Data Sciense (Ciência de Dados), incluindo Machine Learning e Deep Learning.

Assim surgiu o projeto PyScript, como uma biblioteca JavaScript que permite executar scripts Python na página web, inicialmente para quem conhece PHP, irá pensar que é parecido, pois mistura Python e HTML na página web.

O objetivo do projeto PyScript é permitir o público de desenvolvedores Frontend conheçam o poder do Python e as diversas bibliotecas de estatísticas, Machine Learning, Deep Learning, etc.

Se caso você é um Cientista de Dados, pode compartilhar os arquivos HTML, dashboards e modelos para pessoas interessadas poderem executar diretamente no browser a sua aplicação, de forma simples, sem precisar uma configuração complicada.

Como o PyScript funciona?

PyScript foi construído em cima do Pyodide, que é uma biblioteca que transforma código Python em WebAssembly.

WebAssembly é uma tecnologia que possibilita escrever sites em Python. Utiliza uma linguagem no formato .wat legível por humanos, então convertida para o formato .wasm binário para que os browser poder executar. Por meio disso, podemos escrever código em qualquer linguagem, compilá-lo para WebAssembly e executá-lo em um browser.

Por enquanto, o PyScript tem suporte escrever e executar apenas código Python no browser. O objetivo para o futuro é que também ofereça suporte para outras linguagens de programação.

Vamos na prática

Agora vamos executar o primeiro código Python no browser com o PyScript

O famoso Hello World com PyScript

helloword.html


<html>
  <head>
    <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
    <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
  </head>
  <body> 
    <py-script> print('Hello, World!') </py-script> 
  </body>
</html>

Execute o arquivo HTML no browser que utiliza como default e irá mostrar "Hello, World!" na página. Agora vamos para o segundo exemplo mais elaborado que executa o Histograma de uma Distribuição Padrão, como em Estatística.

histograma-dist.html


<html>
    <head>
      <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
      <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
      <py-env>
        - numpy
        - matplotlib
      </py-env>
    </head>

  <body>
    <h1>Histograma de uma Distribuição Padrão</h1>
    <div id="grafico"></div>
    <py-script output="grafico">
import matplotlib.pyplot as plt
import numpy as np

np.random.seed(42)

rv = np.random.standard_normal(1000)

fig, ax = plt.subplots()
ax.hist(rv, bins=30)
fig
    </py-script>
  </body>
</html>

Você deve perguntar, se teria como executar o script Python separado do HTML, a resposta é sim, deixando mais limpo.

Adicione o script Python entre a tag

<py-script src="script.py"> </py-script>

<html>
  <head>
    <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
    <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
  </head>
  <body> 
    <py-script src="/script.py"> </py-script>
  </body>
</html>

Referências

https://anaconda.cloud/pyscript-python-in-the-browser

https://pyscript.com/

https://github.com/pyodide/pyodide/tree/main/packages

Feito!

Nenhum comentário:

Postar um comentário