Du code Python dans vos pages HTML

par Korben -

Si vous êtes développeur et que vous aimez mettre du Python partout, dans vos poches, dans vos slips, sur vos tartines le matin, alors pourquoi ne pas en mettre également dans vos pages HTML ?

Et cela est maintenant possible grâce à ce PyScript, un bout de js + css à intégrer à votre code qui vous permettra de créer des applications Python directement au coeur de votre code HTML.

Pour ce faire, copiez ceci dans votre page :

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

Ensuite, il ne vous reste plus qu’à pondre du Python dans une balise comme ceci :

<py-script>print("hello les petits fous")</py-script>

Voici un exemple avec le calcul de Pi pour 3 décimales après la virgule :

<meta charset="UTF-8"></meta> <title>pytest</title> <strong><link href="https://pyscript.net/alpha/pyscript.css" rel="stylesheet"></link> <script defer="defer" src="https://pyscript.net/alpha/pyscript.js"></script></strong>   <strong> <py-script> def wallis(n): pi = 2 for i in range(1,n): pi *= 4 * i ** 2 / (4 * i ** 2 - 1) return pi pi = wallis(100000) s = f"π est approximativement {pi:.3f}" print(s) </py-script></strong>  

Bon, je ne vous cache pas que c’est long niveau processing et je ne pense pas que ce sera vraiment utilisable pour de l’application web grand public. Mais c’est rigolo. On peut même utiliser des packages et autres modules, faire des interfaces, et même récupérer des valeurs dans les pages HTML avec la fonction pyscript.write comme ceci :

<meta charset="UTF-8"></meta> <title>pytest</title> <link href="https://pyscript.net/alpha/pyscript.css" rel="stylesheet"></link> <script defer="defer" src="https://pyscript.net/alpha/pyscript.js"></script>  <strong> <h1 id="pi">xxx</h1></strong> <py-script> def wallis(n): pi = 2 for i in range(1,n): pi *= 4 * i ** 2 / (4 * i ** 2 - 1) return pi pi = wallis(100000) s = f"π est approximativement {pi:.3f}" <strong>pyscript.write('pi', s)</strong> </py-script>  

Si cela vous intéresse, vous trouverez tout sur le site de PyScript.