Skip to main content

Ejercicios

Ejercicio de Manejo de Archivos en Python: Estadísticas de Palabras

Crear un programa en Python que procese un archivo de texto y genere estadísticas relacionadas con las palabras presentes en el archivo. El programa debe realizar las siguientes tareas:

  1. Lectura del Archivo:

    • Solicitar al usuario que ingrese el nombre del archivo de texto a procesar.
    • Abrir y leer el contenido del archivo.
  2. Conteo de Palabras:

    • Contar el número total de palabras en el archivo.
    • Determinar la frecuencia de cada palabra presente en el archivo.
  3. Palabra Más Frecuente:

    • Identificar y mostrar la palabra que aparece con mayor frecuencia en el archivo.
  4. Palabras Únicas:

    • Mostrar la lista de palabras únicas presentes en el archivo.
  5. Guardar Resultados:

    • Crear un nuevo archivo llamado "estadisticas.txt".
    • Guardar los resultados obtenidos, incluyendo el número total de palabras, la palabra más frecuente y la lista de palabras únicas.

Ejemplo de Ejecución:

Ingrese el nombre del archivo de texto: texto_ejemplo.txt

Resultados:
- Número total de palabras: 150
- Palabra más frecuente: "python"
- Palabras únicas: ["python", "programación", "archivo", ...]

Se han guardado los resultados en el archivo "estadisticas.txt".

Recomendaciones:

  • Utilizar funciones para organizar el código y realizar las diferentes tareas.
  • Manejar adecuadamente casos donde el archivo no existe o está vacío.
  • Considerar la eliminación de signos de puntuación y el uso de letras minúsculas para contar las palabras correctamente.

Extra: Agregar funcionalidades adicionales como la visualización de un gráfico de barras con las frecuencias de las palabras o permitir al usuario buscar información sobre una palabra específica en el archivo.

Ejercicio de Manejo de Archivos en Python: Registro de Notas

Crear un programa en Python que permita gestionar un registro de notas de estudiantes. El programa debe realizar las siguientes tareas:

  1. Menú Principal:

    • Mostrar un menú con las siguientes opciones:
      • Agregar nota de estudiante.
      • Ver todas las notas.
      • Calcular el promedio de notas.
      • Salir.
  2. Agregar Nota de Estudiante:

    • Solicitar al usuario que ingrese el nombre del estudiante y su nota.
    • Agregar la información al registro.
  3. Ver Todas las Notas:

    • Mostrar en pantalla todas las notas registradas, incluyendo el nombre del estudiante y la nota correspondiente.
  4. Calcular el Promedio de Notas:

    • Calcular y mostrar en pantalla el promedio de todas las notas registradas.
  5. Guardar Registro en Archivo:

    • Ofrecer la opción de guardar el registro en un archivo llamado "registro_notas.txt".
  6. Cargar Registro desde Archivo (Extra):

    • Ofrecer la opción de cargar un registro existente desde el archivo "registro_notas.txt" al inicio del programa.

Ejemplo de Ejecución:

--- Menú Principal ---
1. Agregar nota de estudiante
2. Ver todas las notas
3. Calcular el promedio de notas
4. Guardar registro en archivo
5. Cargar registro desde archivo
6. Salir

Ingrese su opción: 1
Ingrese el nombre del estudiante: Juan Pérez
Ingrese la nota del estudiante: 85

Nota agregada exitosamente.

--- Menú Principal ---
...

Ingrese su opción: 2
Notas Registradas:
- Juan Pérez: 85
...

Ingrese su opción: 3
El promedio de notas es: 87.5

Ingrese su opción: 4
Registro guardado en "registro_notas.txt".

Ingrese su opción: 6
Hasta luego.

Recomendaciones:

  • Utilizar estructuras de datos como diccionarios o listas para almacenar la información de las notas.
  • Modularizar el código mediante funciones para cada opción del menú.
  • Manejar adecuadamente casos donde el archivo no existe o está vacío.
  • Considerar la posibilidad de permitir la carga de registros anteriores desde el archivo al iniciar el programa.

Extra: Agregar funcionalidades adicionales como la posibilidad de eliminar una nota específica, ordenar las notas por nombre o nota, o realizar un análisis estadístico más detallado.

Ejercicio de Manejo de Archivos en Python: Gestión de Tareas Pendientes

Crear un programa en Python que permita gestionar una lista de tareas pendientes. El programa debe realizar las siguientes tareas:

  1. Menú Principal:

    • Mostrar un menú con las siguientes opciones:
      • Agregar nueva tarea.
      • Ver todas las tareas.
      • Marcar una tarea como completada.
      • Eliminar una tarea.
      • Guardar lista de tareas en un archivo.
      • Cargar lista de tareas desde un archivo.
      • Salir.
  2. Agregar Nueva Tarea:

    • Solicitar al usuario que ingrese una nueva tarea.
    • Agregar la tarea a la lista.
  3. Ver Todas las Tareas:

    • Mostrar en pantalla todas las tareas pendientes, indicando si están completadas o no.
  4. Marcar una Tarea como Completada:

    • Mostrar la lista de tareas y solicitar al usuario el índice de la tarea que desea marcar como completada.
    • Actualizar el estado de la tarea.
  5. Eliminar una Tarea:

    • Mostrar la lista de tareas y solicitar al usuario el índice de la tarea que desea eliminar.
    • Eliminar la tarea de la lista.
  6. Guardar Lista de Tareas en Archivo:

    • Ofrecer la opción de guardar la lista de tareas en un archivo llamado "tareas.txt".
  7. Cargar Lista de Tareas desde Archivo (Extra):

    • Ofrecer la opción de cargar una lista de tareas existente desde el archivo "tareas.txt" al inicio del programa.

Ejemplo de Ejecución:

--- Menú Principal ---
1. Agregar nueva tarea
2. Ver todas las tareas
3. Marcar una tarea como completada
4. Eliminar una tarea
5. Guardar lista de tareas en archivo
6. Cargar lista de tareas desde archivo
7. Salir

Ingrese su opción: 1
Ingrese la nueva tarea: Completar informe

Tarea agregada exitosamente.

--- Menú Principal ---
...

Ingrese su opción: 2
Lista de Tareas Pendientes:
1. Completar informe - Pendiente
...

Ingrese su opción: 3
Lista de Tareas Pendientes:
1. Completar informe - Completada
...

Ingrese su opción: 4
Lista de Tareas Pendientes:
...

Ingrese su opción: 5
Lista de tareas guardada en "tareas.txt".

Ingrese su opción: 7
Hasta luego.

Recomendaciones:

  • Utilizar una estructura de datos como una lista para almacenar la información de las tareas.
  • Modularizar el código mediante funciones para cada opción del menú.
  • Manejar adecuadamente casos donde el archivo no existe o está vacío.
  • Permitir al usuario salir del programa solo después de confirmar su decisión.

Extra: Agregar funcionalidades adicionales como la capacidad de asignar fechas de vencimiento a las tareas, filtrar tareas por estado (completadas o pendientes) o imprimir un informe con estadísticas sobre las tareas.

JSON

Ejercicio de Manejo de Archivos en Python con JSON: Registro de Contactos

Crear un programa en Python que permita gestionar un registro de contactos utilizando el formato JSON para almacenar la información. El programa debe realizar las siguientes tareas:

  1. Menú Principal:

    • Mostrar un menú con las siguientes opciones:
      • Agregar nuevo contacto.
      • Ver todos los contactos.
      • Buscar contacto por nombre.
      • Eliminar contacto.
      • Guardar registro de contactos en un archivo JSON.
      • Cargar registro de contactos desde un archivo JSON.
      • Salir.
  2. Agregar Nuevo Contacto:

    • Solicitar al usuario que ingrese información sobre un nuevo contacto (nombre, número de teléfono, correo electrónico, etc.).
    • Agregar el nuevo contacto al registro.
  3. Ver Todos los Contactos:

    • Mostrar en pantalla la información de todos los contactos registrados.
  4. Buscar Contacto por Nombre:

    • Solicitar al usuario que ingrese el nombre de un contacto.
    • Mostrar en pantalla la información del contacto si existe.
  5. Eliminar Contacto:

    • Mostrar la lista de contactos y solicitar al usuario el índice del contacto que desea eliminar.
    • Eliminar el contacto seleccionado.
  6. Guardar Registro de Contactos en Archivo JSON:

    • Ofrecer la opción de guardar el registro de contactos en un archivo JSON llamado "contactos.json".
  7. Cargar Registro de Contactos desde Archivo JSON (Extra):

    • Ofrecer la opción de cargar un registro de contactos existente desde el archivo "contactos.json" al inicio del programa.

Ejemplo de Ejecución:

--- Menú Principal ---
1. Agregar nuevo contacto
2. Ver todos los contactos
3. Buscar contacto por nombre
4. Eliminar contacto
5. Guardar registro de contactos en archivo JSON
6. Cargar registro de contactos desde archivo JSON
7. Salir

Ingrese su opción: 1
Ingrese el nombre del nuevo contacto: Juan Pérez
Ingrese el número de teléfono: 123-456-7890
Ingrese el correo electrónico: juan@example.com

Contacto agregado exitosamente.

--- Menú Principal ---
...

Ingrese su opción: 2
Lista de Contactos:
1. Juan Pérez - Teléfono: 123-456-7890, Correo: juan@example.com
...

Ingrese su opción: 3
Ingrese el nombre del contacto a buscar: Juan Pérez

Información del contacto:
- Nombre: Juan Pérez
- Teléfono: 123-456-7890
- Correo: juan@example.com

...

Ingrese su opción: 5
Registro de contactos guardado en "contactos.json".

Ingrese su opción: 7
Hasta luego.

Recomendaciones:

  • Utilizar diccionarios para almacenar la información de cada contacto.
  • Modularizar el código mediante funciones para cada opción del menú.
  • Manejar adecuadamente casos donde el archivo no existe o está vacío.
  • Considerar la posibilidad de permitir la carga de registros anteriores desde el archivo al iniciar el programa.

Extra: Agregar funcionalidades adicionales como la posibilidad de actualizar la información de un contacto, mostrar estadísticas sobre los contactos (por ejemplo, cantidad total), o permitir la clasificación de contactos por algún criterio específico.

CSV

Ejercicio de Manejo de Archivos en Python con CSV: Registro de Ventas

Crear un programa en Python que permita gestionar un registro de ventas utilizando archivos CSV para almacenar la información. El programa debe realizar las siguientes tareas:

  1. Menú Principal:

    • Mostrar un menú con las siguientes opciones:
      • Registrar nueva venta.
      • Ver todas las ventas.
      • Calcular el total de ventas.
      • Filtrar ventas por fecha.
      • Guardar registro de ventas en un archivo CSV.
      • Cargar registro de ventas desde un archivo CSV.
      • Salir.
  2. Registrar Nueva Venta:

    • Solicitar al usuario que ingrese información sobre una nueva venta (producto, cantidad, precio, fecha, etc.).
    • Agregar la nueva venta al registro.
  3. Ver Todas las Ventas:

    • Mostrar en pantalla la información de todas las ventas registradas.
  4. Calcular el Total de Ventas:

    • Calcular y mostrar en pantalla el total de ventas realizadas.
  5. Filtrar Ventas por Fecha:

    • Solicitar al usuario que ingrese una fecha.
    • Mostrar en pantalla las ventas realizadas en la fecha ingresada.
  6. Guardar Registro de Ventas en Archivo CSV:

    • Ofrecer la opción de guardar el registro de ventas en un archivo CSV llamado "ventas.csv".
  7. Cargar Registro de Ventas desde Archivo CSV (Extra):

    • Ofrecer la opción de cargar un registro de ventas existente desde el archivo "ventas.csv" al inicio del programa.

Ejemplo de Ejecución:

--- Menú Principal ---
1. Registrar nueva venta
2. Ver todas las ventas
3. Calcular el total de ventas
4. Filtrar ventas por fecha
5. Guardar registro de ventas en archivo CSV
6. Cargar registro de ventas desde archivo CSV
7. Salir

Ingrese su opción: 1
Ingrese el nombre del producto: Laptop
Ingrese la cantidad vendida: 2
Ingrese el precio unitario: 1200.00
Ingrese la fecha de venta (DD/MM/AAAA): 15/02/2023

Venta registrada exitosamente.

--- Menú Principal ---
...

Ingrese su opción: 2
Registro de Ventas:
1. Laptop - Cantidad: 2, Precio unitario: 1200.00, Total: 2400.00, Fecha: 15/02/2023
...

Ingrese su opción: 3
El total de ventas es: 2400.00

Ingrese su opción: 4
Ingrese la fecha de venta a filtrar (DD/MM/AAAA): 15/02/2023

Ventas en la fecha 15/02/2023:
1. Laptop - Cantidad: 2, Precio unitario: 1200.00, Total: 2400.00

...

Ingrese su opción: 5
Registro de ventas guardado en "ventas.csv".

Ingrese su opción: 7
Hasta luego.

Recomendaciones:

  • Utilizar listas o diccionarios para almacenar la información de cada venta.
  • Utilizar el módulo csv de Python para trabajar con archivos CSV.
  • Modularizar el código mediante funciones para cada opción del menú.
  • Manejar adecuadamente casos donde el archivo no existe o está vacío.
  • Considerar la posibilidad de permitir la carga de registros anteriores desde el archivo al iniciar el programa.

Extra: Agregar funcionalidades adicionales como la posibilidad de actualizar la información de una venta, mostrar estadísticas sobre las ventas (por ejemplo, productos más vendidos), o permitir la clasificación de ventas por algún criterio específico.