



Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Ejercicio sobre el manejo de archivos y base de datos excel
Tipo: Ejercicios
1 / 6
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!




Objetivo : Crear una base de datos en la cual se le inserten los nombres de los alumnos de un grupo dato y a su vez se coloque la calificación de este mismo alumno, esto a fin de crear una base de datos. Procedimiento : Esto se lograr mediante el uso de una clase, la cual tiene diferentes métodos, que nos permiten guardar la información. El primer método es evidentemente el constructor, en el cual se colocaran los atributos de instancia los cuales son el nombre y la calificación. Continuando con el método agregar alumno el cual inserta datos en ambas listas. Despues se tiene el obtener promedio. Finalmente para guardar el Excel se usa un ultimo método. En el ciclo infinito es donde se mandaran a llamar los métodos, pero primeramente se tiene que hacer un objeto el cual es un solo objeto pero tiene diferentes datos (como si fueran sub objetos) Esto se logrará Nombre : Andrik Uriel Pesina Salazar Matrícula : 2115936 Nombre del curso: Programación Orientada a Objetos Nombre del profesor : Miguel Ángel Gómez Marroquín Modulo Netacad : G003 LMV M5 Actividad : ACT-08. Manejo de lista de calificaciones en Excel Fecha : 25 /0 3 / Bibliografia (Formato APA)
Resultados Descripción orientada a objetos Este programa es un sistema de captura de calificaciones escolares. Su proposito es permitir al usuario registrar nombres de alumnos junto con sus calificaciones, calcular el promedio general del grupo y guardar toda la informacion a un archivo de Excel. Las listas listaNombres y listaCalificaciones viven fuera de la clase como datos globales, y la clase simplemente los referencia y los manipula mediante sus metodos. Análisis Orientado a Objetos Evidentemente se crean los objetos “infinitos” del sistema con sus atributos, entradas, salidas, etc. Objetos. GrupoDeClase Usuario ArchivoExcel Atributos self.nombres (referencia a lista_nombres), self.calificaciones (referencia a lista_calificaciones) Entradas nombre (string), calificacion (float) ingresados por el usuario texto escrito en consola lista de nombres y calificaciones Salidas promedio en consola, archivo calificaciones.xlsx datos enviados a baseDatos mediante input()
self.nombres = listaNombres self.calificaciones = listaCalificaciones def agregar_alumno(self, nombre, calificacion): self.nombres.append(nombre) self.calificaciones.append(calificacion) def obtener_promedio(self): if len(self.calificaciones) == 0 : print("el promedio no se puede obtener ya que no se puede dividir entre cero") return suma = sum(self.calificaciones) promedio = suma / len(self.calificaciones) print("El promedio general del grupo es:", promedio) def guardar_en_excel(self, nombre_archivo): wb = Workbook() ws = wb.active ws.append(["Nombre", "Calificacion"]) for i in range(len(self.nombres)): ws.append([self.nombres[i], self.calificaciones[i]]) wb.save(nombre_archivo) print("Archivo", nombre_archivo, "guardado!") grupo = baseDatos() while True: nombre = input("Escribe el nombre del alumno (o 'no' para terminar): ") if nombre.lower() == "no": print("Datos capturados") break calificacion = float(input("Escribe la calificacion: ")) grupo.agregar_alumno(nombre, calificacion) respuesta = input("desea conocer el promedio general del grupo de clase? (si/no): ") if respuesta.lower() == "si": grupo.obtener_promedio() wb = Workbook() ws = wb.active for i in range(len(listaNombres)): ws.append([listaNombres[i], listaCalificaciones[i]]) grupo.guardar_en_excel("calificaciones.xlsx") Documentación
Propósito El programa captura nombres y calificaciones de alumnos de forma dinamica (sin limite), calcula el promedio general del grupo y exporta toda la informacion a un archivo Excel llamado calificaciones.xlsx. Entradas nombre: string con el nombre del alumno ingresado por teclado calificacion: numero flotante con la calificacion del alumno respuesta: string 'si' o 'no' para decidir si ver el promedio Salidas Promedio: suma la calificación de los alumnos y la divide entre la calificación de los alumnos Archivo .xlsx: es el archivo que guarda los datos en el Excel. Libreria openpyxl Se usa la libreria openpyxl para crear y guardar archivos de Excel desde Python. Los metodos principales que se usan son: Workbook() para crear el archivo, .active para obtener la hoja, .append() para agregar filas y .save() para guardar el archivo en disco. Funcionamiento general. El programa inicia creando dos listas globales vacías para guardar nombres y calificaciones. Después crea un objeto de la clase GrupoDeClase que referencia esas listas. Entra en un bucle infinito pidiendo datos al usuario hasta que este escriba "no", momento en el que imprime "Datos capturados" y sale del bucle. Luego pregunta si se desea conocer el promedio, y si el usuario responde "si" calcula la suma de todas las calificaciones y la divide entre el total de alumnos. Si la lista estaba vacía, avisa que no se puede dividir entre cero sin que el programa truene. Al final, sin importar la respuesta, llama al método guardar_en_excel() que crea un archivo .xlsx con todos los datos capturados y lo guarda en la misma carpeta donde está el programa.