Un toplevel Python embarqué

Avertissement

Javascript est requis !

Cette page embarque des scripts écrits en javascript. À priori, cela devrait fonctionner sur n’importe quel navigateur assez récent, pour peu qu’il supporte javascript (et que javascript ne soit pas désactivé).


Voir aussi

Je recommande les outils suivants, plus modernes et plus complets !

En cas de problème, on peut aussi utiliser :

  • CodeSkulptor 3 est assez complet pour la librairie standard et ça marche bien ! Pas sûr qu’il marche parfaitement hors ligne. Basé sur Skulpt.org, que j’avais déployé dans la page skulpt !

  • Le notebook RustPython est aussi bien fait, mais pas sûr de savoir quels modules de la librairie standard et quelles fonctionnalités de Python sont bien supportées. Mais c’est très impressionnant…

Avertissement

Cette page est très vieille, et ne marche probablement plus bien. Ca n’a jamais été autre chose qu’une petite démonstration.

Avertissement

Une autre version, plus légère et rapide, est disponible : skulpt !

Toplevel Python 2.7.2 avec l’éditeur ACE

# Une démonstration de python.js, utilisant l'éditeur ACE.js :) !
print 'Bonjour, le monde !'
print {i: i**9 for i in range(8)}  # dictionnaire en compréhension
print {i*6 for i in range(8)}  # ensemble en compréhension
# Un exemple, comme celui pour OCaml
def factorial(n):
  if n == 0: return 1
  else: return n * factorial(n - 1)
print factorial(11)
# Dernier exemple, montre la version
import sys, os
print "Version: %s" % sys.version
print "Dossier courant: %s" % os.getcwd()
# Ajoutez votre propre commande Python :

Sortie du toplevel (output) :




Python powered :) ACE powered :)

Voir aussi

Skulpt (ici aussi)

Skulpt est une autre implémentation en JavaScript de Python. Il propose aussi des modules simples pour manipuler des canvas HTML pour avoir des interfaces graphiques !

SymPy Live (live.SymPy.org)

Est encore un autre terminal Python s’exécutant dans un navigateur. Avec SymPy installé (calcul symbolique en Python), et en interprétant la sortie de SymPy comme du code LaTeX, rendu avec MathJax.

À propos

Comme dans .special.rst, j’utilise la directive .. raw:: html pour embarquer du code HTML dans la page produite par Sphinx. C’est simple, c’est propre.

Libraire standard

En utilisant un débogueur JavaScript, comme FireBug, ou les « outils développeurs » dans Firefox ou Chromium, il est possible de voir les appels aux fichiers de la librairie Python.

Ils sont stockés dans ce dossier _static/python/lib/python2.7/ :)

Autres pages

Ce terminal est aussi disponible ici _static/python/index.html, mais avec l’apparence la plus simpliste.

Hébergements

Les scripts Javascript utilisés sur mes pages sont hébergés sur ce dépot git : lbesson/web-sphinx-scripts, sur bitbucket.org.

Copyrights

Le toplevel Python embarqué ici est implémenté en Javascript, et vient du projet Empythoned (voir cette page github.com/replit/empythoned) pour plus de détails.