Aller au contenu

Publications

Le module d'autoévaluation

Le noyau Python de Basthon embarque un module basthon.autoeval pour tester automatiquement le code des élèves. Par exemple, ValidateFunction compare une fonction à une fonction de référence sur une série de valeurs :

from basthon.autoeval import ValidateFunction

ValidateFunction("valeur_absolue", [-3, -1, 0, 2, 5], valid_function=abs)()

Le module propose aussi ValidateVariables pour vérifier des variables, et sert de base au notebook séquencé.

Jouer avec !

Autoévaluation

Des consignes en lecture seule

Un double-clic malencontreux sur une consigne, et voilà l'élève face à du code Markdown… Avec l'extension romd (pour read-only markdown, paramètre d'URL extensions=romd), les cellules Markdown du notebook de Basthon ne sont plus modifiables et on ne peut plus en créer.

Jouer avec !

Markdown en lecture seule

Les numéros de ligne dès l'ouverture

Avec l'extension linenumbers (paramètre d'URL extensions=linenumbers), le notebook de Basthon s'ouvre avec les numéros de ligne affichés dans toutes les cellules de code. Pratique pour dire à un élève « regarde la ligne 4 » !

Jouer avec !

Numéros de ligne

Le notebook séquencé

Avec l'extension sequenced, le notebook de Basthon se dévoile au fur et à mesure : la suite n'apparaît que lorsque l'élève a réussi l'étape en cours.

Il suffit d'activer l'extension dans l'URL (extensions=sequenced) et de taguer breakpoint les cellules qui servent de points d'arrêt. Ces cellules appellent des fonctions de validation, généralement placées dans un module à part pour ne pas dévoiler les réponses.

Jouer avec !

Notebook séquencé

openpyxl

Le module openpyxl arrive dans le noyau Python de Basthon : on peut désormais lire et écrire des fichiers Excel (.xlsx), directement ou via pandas.read_excel.

openpyxl