Quelques trucs pratiques
I. Faire utiliser un programme sans communiquer son code
Dans certains cas, il peut être intéressant de fournir un programme aux élèves sans révéler son code pour autant. Cela peut notamment être utile dans les cas suivants :
- Pour essayer de trouver des bugs avec des tests "boîte noire" ;
- Pour faire dans un premier temps utiliser un algorithme qu'on leur demandera d'implanter plus tard.
Pour ce faire, il faut compiler le programme Python. Cette tâche doit absolument être effectuée sur la même architecture que celle avec laquelle vont travailler les élèves (même système, même version de Python notamment)
Pour compiler un fichier operations.py
, voici les différentes
étapes :
- depuis le répertoire contenant le fichier
operations.py
, taper la commande :python -m py_compile operation.py
Ceci a pour effet de créer un fichier contenant votre programme compilé. Ce fichier se situe dans un sous répertoire__pycache__
du répertoire courant. Par ailleurs, le fichier porte un nom commençant par le nom du fichier de départ (ici,operation
), et se terminant par l'extension.pyc
. - renommer le fichier compilé pour qu'il porte le même nom de base
que le fichier source (
operation
dans notre cas), mais toujours l'extenstion.pyc
. Dans mon cas : - Donner ce fichier aux élèves en leur faisant utiliser comme s'il
s'agissait d'un fichier non compilé (ils le placent dans le répertoire
où ils en ont besoin, puis, dans leur programme, font un
import operation
).
cd __pycache__ mv operation.cpython-37.pyc operation.pyc