générer un grand nombres de sujets

Les propositions de correctifs ou d'exercices pour Pyromaths.

Modérateur: Développeurs

générer un grand nombres de sujets

Messagede ffoperso » Ven 09 Sep 2016, 19:51

Bonjour,

je débute avec pyromath
je souhaiterai créer un grand nombres de sujets différents environ 90 avec latex
avce la version 15.02 du logiciel il n'y a que la génération d'un fichier .tex
est-il possible d'en générer un grand nombre ?
quelqu'un aurait-il déjà fait cela ?
merci
ffoperso
 
Messages: 14
Inscription: Ven 09 Sep 2016, 18:44

Re: générer un grand nombres de sujets

Messagede spalax » Ven 09 Sep 2016, 21:30

Bonjour,
j'avais créé un outil pour faire des tests, qui permet de faire ce que tu veux. Par contre (pour le moment ?) il n'est pas packagé, donc il faut faire ça à partir des sources. Il s'appelle `testexos.py` et il est situé dans le répertoire `src`. Avec ça, tu peux faire :

Code: Tout sélectionner
# Liste tous les exercices disponibles
$ ./testexos.py lsexos
...
sixiemes.ProduitPuissanceDix
lycee.cercle_trigonometrique
sixiemes.QuestionsAbscisses

# Générer un exercice
$ ./testexos.py create lycee.cercle_trigonometrique

# À l'aide !
$ ./testexos.py create -h


-- Louis
spalax
 
Messages: 70
Inscription: Mer 20 Juil 2011, 02:23
Localisation: Nogent sur Oise

Re: générer un grand nombres de sujets

Messagede ffoperso » Sam 10 Sep 2016, 14:53

Merci pour ton aide louis,
j'avoue ne pas bien savoir par quel bout le prendre ...
si j'ai bien compris c python qui génère les fichier tex
donc je dois créer un script python qui fait cela ?
Mais le fichier testexos.py me retourne des erreurs à la compilation je retourne chercher ;-)
ffoperso
 
Messages: 14
Inscription: Ven 09 Sep 2016, 18:44

Re: générer un grand nombres de sujets

Messagede spalax » Dim 11 Sep 2016, 16:41

ffoperso a écrit:(...) donc je dois créer un script python qui fait cela ?

Pas forcément ; un script shell, voire une unique commande, peut suffire. Il faudrait que je comprenne exactement ce que tu veux faire pour t'aider plus (est-ce que tu veux créer 90 fichiers pdf avec le même exo (avec des valeurs numériques différentes) ? Avec des exos différents ? Avec plusieurs exos par fichier ? Etc. ?)

ffoperso a écrit:Mais le fichier testexos.py me retourne des erreurs à la compilation je retourne chercher ;-)

Pareil ici… Pourtant, ça marchait… Je trouverai peut-être du temps mardi soir pour corriger ça. Suspens…

-- Louis
spalax
 
Messages: 70
Inscription: Mer 20 Juil 2011, 02:23
Localisation: Nogent sur Oise

Re: générer un grand nombres de sujets

Messagede ffoperso » Dim 11 Sep 2016, 18:00

Bonjour louis,

L'objectif est de créer un devoir maison avec correction :
4 exercices de types différents ( identités remarquables,factorisations, puissance, équations)
mais pour chacun des 90 élèves des valeurs numériques différentes) donc 90 versions différentes

pour les erreurs de compilation j'ai trouvé ligne 296 : print (exo_id) il manquait les parenthèses passage version python 2 à 3 ;-)
j'ai une erreur ligne 34 : gettext.install('pyromaths', unicode=1)
merci de ton aide
Fred
ffoperso
 
Messages: 14
Inscription: Ven 09 Sep 2016, 18:44

Re: générer un grand nombres de sujets

Messagede spalax » Mar 13 Sep 2016, 21:12

ffoperso a écrit:L'objectif est de créer un devoir maison avec correction :
4 exercices de types différents ( identités remarquables,factorisations, puissance, équations)
mais pour chacun des 90 élèves des valeurs numériques différentes) donc 90 versions différentes

Je n'ai pas créé `testexo` pour ce but, mais il doit pouvoir servir à ça. :)

ffoperso a écrit:pour les erreurs de compilation j'ai trouvé ligne 296 : print (exo_id) il manquait les parenthèses passage version python 2 à 3 ;-)

Tient… Il ne me semblait pas que Pyromaths fonctionnait en Python3… N'hésite pas à proposer des patchs si tu corriges des erreurs.

ffoperso a écrit:j'ai une erreur ligne 34 : gettext.install('pyromaths', unicode=1)

Il faudra que je regarde ça.

Finalement, je n'ai pas le temps de voir ça ce soir. Peut-être ce week-end (deux nouveaux niveaux, prof principal pour la première fois, et un bébé à la maison : ça laisse peu de temps derrière l'ordinateur…).

-- Louis
spalax
 
Messages: 70
Inscription: Mer 20 Juil 2011, 02:23
Localisation: Nogent sur Oise

Re: générer un grand nombres de sujets

Messagede spalax » Ven 16 Sep 2016, 21:27

Bonsoir,
pour l'erreur, ça fonctionne chez moi. Aucun problème du côté de pyromaths, mais le paquet LaTeX asymptote doit être installé. Sous debian (et sans doute ses dérivés) :
Code: Tout sélectionner
sudo apt-get install asymptote


Pour la génération en masse de sujets, j'ai fait les modifications nécessaires : https://github.com/Pyromaths/pyromaths/commit/8915224e702ca829ef5c21b06fa62263d8b5e2a0. Pour générer un sujet :
Code: Tout sélectionner
./testexo.py compile cinquiemes.reperage cinquiemes.produits_fractions cinquiemes.priorites


Pour générer 90 sujets, de manière déterministe (l'appel deux fois de suite de cette commande produit exactement les mêmes exercices) :
Code: Tout sélectionner
for NUM in $(seq -w 90)
do
  ./testexo.py compile -o dm$NUM.pdf cinquiemes.reperage:$NUM cinquiemes.produits_fractions:$NUM cinquiemes.priorites:$NUM
done


Exercice et correction sont générés dans le même PDF. Si tu as besoin de PDF séparés, il faut encore améliorer le code.

Si tu as des questions, n'hésite pas.

-- Louis

PS : À un moment donné, peut-être qu'on voudra renommer `testexo.py` en `pyromaths-cli`…
spalax
 
Messages: 70
Inscription: Mer 20 Juil 2011, 02:23
Localisation: Nogent sur Oise

Re: générer un grand nombres de sujets

Messagede ffoperso » Dim 25 Sep 2016, 15:44

ça ne marche pas de mon côté ...
j'ai des erreurs de compilation en python
je vais essayé de modifier le template en .tex et de générer 90 sujets avec pyro mais
il doit y avoir un moyen plus élégant !
ffoperso
 
Messages: 14
Inscription: Ven 09 Sep 2016, 18:44

Re: générer un grand nombres de sujets

Messagede spalax » Dim 25 Sep 2016, 20:22

Peux-tu exécuter cette commande, et copier ici la sortie (et les erreurs) ?

Code: Tout sélectionner
./testexo.py compile cinquiemes.reperage cinquiemes.produits_fractions cinquiemes.priorites
spalax
 
Messages: 70
Inscription: Mer 20 Juil 2011, 02:23
Localisation: Nogent sur Oise

Re: générer un grand nombres de sujets

Messagede ffoperso » Mer 28 Sep 2016, 15:25

oui, j'ai l'erreur suivante
File "C:\Program Files (x86)\pyromaths\src\testexo.py", line 35, in <module>
gettext.install('pyromaths', unicode=1)
TypeError: install() got an unexpected keyword argument 'unicode'
ffoperso
 
Messages: 14
Inscription: Ven 09 Sep 2016, 18:44

Re: générer un grand nombres de sujets

Messagede ffoperso » Mer 28 Sep 2016, 16:16

J'ai réinstallé python au cas ou ...;-)
je n'ai plus l'erreur précédente ?
je vais dans program file x86 puis pyromath puis src
je trouve le fichier testexo.py
je l'ouvre avec idle et je le run
là je devraispouvoir compiler donc je tape compile cinquiemes.reperage cinquiemes.produits_fractions cinquiemes.priorites
et il bloque sur cinquièmes qui est bien présent
que se passe t-il ?
merci de ton aide
ffoperso
 
Messages: 14
Inscription: Ven 09 Sep 2016, 18:44

Re: générer un grand nombres de sujets

Messagede ffoperso » Mer 28 Sep 2016, 16:33

j'ai toujours l'erreur Traceback (most recent call last):
File "C:\Program Files (x86)\pyromaths\src\testexo.py", line 35, in <module>
gettext.install('pyromaths', unicode=1)
TypeError: install() got an unexpected keyword argument 'unicode'

alors que l'erreur dans le print a été rectifié ... merci de lire un "padawan" qui rame ;-))
ffoperso
 
Messages: 14
Inscription: Ven 09 Sep 2016, 18:44

Re: générer un grand nombres de sujets

Messagede spalax » Mer 28 Sep 2016, 22:06

testexo ne fonctionne pas (pas encore ?) avec Python3. Réessaye avec python2.7. Si ça ne fonctionne pas, copie le message d'erreur (même si c'est le même que le précédent) et donne moi la version de python que tu utilises (avec "python --version").
spalax
 
Messages: 70
Inscription: Mer 20 Juil 2011, 02:23
Localisation: Nogent sur Oise

Re: générer un grand nombres de sujets

Messagede ffoperso » Mer 28 Sep 2016, 22:27

avec Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 27 2016, 15:24:40) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>>
=============== RESTART: C:/Users/frederic/Desktop/testexo.py ===============

Traceback (most recent call last):
File "C:/Users/frederic/Desktop/testexo.py", line 37, in <module>
from pyromaths.ex.test import TestPerformer, TestException, compile
ImportError: No module named pyromaths.ex.test
ffoperso
 
Messages: 14
Inscription: Ven 09 Sep 2016, 18:44

Re: générer un grand nombres de sujets

Messagede spalax » Jeu 29 Sep 2016, 12:24

Ce qui me surprends est le chemin de testexo.py qui apparait dans ta console :
Code: Tout sélectionner
  File "C:/Users/frederic/Desktop/testexo.py", line 37, in <module>


Le programme `testexo` ne fonctionne pas de façon autonome : il a besoin de l'ensemble de pyromaths pour fonctionner. Du coup, ce qu'il faut faire, c'est :
  • télécharger le code de pyromaths (la branche develop), soit avec git, soit comme un ZIP (bouton « Clone or download » de la page github de pyromaths https://github.com/Pyromaths/pyromaths).
  • si tu as téléchargé l'archive, la dézipper (si tu as fait un git clone, rien de particulier à faire)
  • te placer dans le dossier "CHEMIN/VERS/PYROMATHS/src" (celui qui contient les fichiers pyromaths.py et testexo.py : https://github.com/Pyromaths/pyromaths/tree/develop/src)
  • lancer la commande :
    Code: Tout sélectionner
    python testexo.py compile cinquiemes.reperage cinquiemes.produits_fractions cinquiemes.priorites

Est-ce que tu travailles en ligne de commande, ou utilises-tu une autre manière de lancer testexo.py ? Si oui, laquelle ?

Pour copier les messages d'erreur (de préférence avec la commande que tu as utilisées pour obtenir ce message d'erreur), tu peux utiliser la balise [code]Mon message d'erreur[/code] : ça va respecter les sauts de lignes et les espaces, et rendre le message plus lisible.

-- Louis
spalax
 
Messages: 70
Inscription: Mer 20 Juil 2011, 02:23
Localisation: Nogent sur Oise

Suivante

Retourner vers Propositions

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 5 invités

cron