8000 GitHub - JoaCordova/ExamenGen: Python script that generates unique exams for each student by randomly selecting questions from a bank.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Python script that generates unique exams for each student by randomly selecting questions from a bank.

License

Notifications You must be signed in to change notification settings

JoaCordova/ExamenGen

Repository files navigation

Generador de Exámenes Personalizados

Python License: MIT pandas PyPDF2 fpdf

2025-05-13 18-55-08 (1)

Este script en Python genera exámenes en formato PDF para un grupo de 30 estudiantes, seleccionando aleatoriamente 30 preguntas a partir de un banco de 45 preguntas organizadas en tres categorías (15 por categoría). El objetivo es que cada prueba sea única para cada alumno. Además de los exámenes, el script adjunta un archivo de respuestas (answers.pdf) para cada uno y exporta un archivo CSV (respuestas.csv) con las claves correctas correspondientes a cada estudiante.

📦 Instalación

  • Antes de empezar, carga las preguntas, sus opciones, respuestas correctas y el tipo (categoría/tema) en preguntas.csv.
  • Posteriormente, instala las librerías necesarias. Puedes hacerlo con pip:
pip install fpdf PyPDF2 pandas
  • Ejecuta el código.

🤖 Funcionamiento

Se generan 30 exámenes. Para cada alumno, se seleccionan aleatoriamente n preguntas por tema. Ninguna hoja tiene preguntas repetidas y cada examen tiene una combinación única de preguntas (al menos 5 diferentes entre ellos). El código del alumno se usa como identificador único (ej. 001, 002).

  • Exportación de Archivos:

    • Cada examen se guarda como examen_XXX.pdf en la carpeta examenes/.

    • Se crea el archivo respuestas.csv con todas las respuestas correctas por alumno.

About

Python script that generates unique exams for each student by randomly selecting questions from a bank.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0