Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Objetivos:
Al finalizar este programa usted ganar ms experiencia en
Operaciones de entrada y salida de archivos
Operaciones con Diccionarios
Operaciones con listas
Manejo de Cadena de caracteres
Descripcin:
En este proyecto usted crear un programa que permitir al usuario consultar informacin acerca de
los libros que han aparecido en la lista de los libros mejores vendidos publicados por el New York
Times desde 1942.
El archivo bestsellers.txt contiene la data de los libros. Cada lnea en el archivo contiene
informacin de un libro, la cual incluye: ttulo, autor, editorial, fecha en que se lleg a ser best seller
y categora (Fiction y Nonfiction). Los campos en la lnea estn separados por un carcter tab (en
python tab caracter es \t).
El programa debe mostrar un men de opciones que permite al usuario buscar los libros que
cumplen con cierto criterio. Las opciones del men son:
1. Mostrar los libros que fueron publicados dentro de un rango de aos: El programa pide al
usuario el ao de inicio y ao de fin de la bsqueda y muestra informacin de los Best Sellers
entre esos aos. El ao de fin de la bsqueda puede ser opcional, si el usuario no ingresa ao de
fin se debe considerar como ao de fin el ao actual (2017).
2. Buscar libros por ttulo: El programa pide al usuario una cadena de caracteres y entonces
muestra todos los libros que contienen esa cadena de caracteres en el ttulo(sin importar
maysculas o minsculas). Por ejemplo, si el usuario ingresa secret, el programa debera
mostrar los siguientes libros:
4. Estadsticas por autor y categora: Esta opcin muestra al usuario las siguiente informacin
Para esta opcin usted debe crear una matriz de numpy autores vs categoras, donde cada celda es el
nmero de libros de ese autor en esa categora y usar esa matriz para obtener la informacin
requerida.
Instrucciones:
[
{publisher': 'Random House', 'date': '4/11/1976', 'title': '1876', 'cathegory': 'Fiction', 'author': 'Gore
Vidal},
{'publisher': 'Scribner', 'date': '11/27/2011', 'title': '23337', 'cathegory': 'Fiction', 'author': 'Stephen
King},
{'publisher': 'Putnam', 'date': '7/8/1984', 'title': '...and Ladies of the Club', 'cathegory': 'Fiction',
'author': 'Helen Hooven Santmeyer},
{'publisher': 'Little, Brown', 'date': '3/25/2001', 'title': '1st to Die', 'cathegory': 'Fiction', 'author':
'James Patterson},
.
.
.
{'publisher': ' Scribner ', 'date': ' 10/13/2013 ', 'title': 'Doctor Sleep ', 'cathegory': ' Fiction', 'author': '
Stephen King }
]
Matriz Numpy
Cree una funcin que retorne una matriz de numpy donde las filas son los nombres de los autores y
las columnas son las categoras de los libros (Fiction y nonfiction). Cada celda tiene el nmero de
bestsellers publicados por el autor por categora (Fiction y NonFiction). Para esto cree una lista
con los nombres de los autores y una lista con los nombres de las categoras. Recorra la lista
con los libros y por cada registro aumentar en 1 el nmero de libros publicados por el autor
del registro en la categora que corresponda.
Consideraciones:
El programa debe continuar ejecutndose hasta que el usuario ingrese la opcin 5 del men.
Si un criterio de bsqueda no devuelve ningn resultado muestre un mensaje indicando que No
hay resultados para mostrar, en lugar de solamente no mostrar nada.
Su programa debe validar errores de ingreso del usuario y mostrar mensajes apropiados.
No se pueden usar variables globales dentro de las funciones, cada funcin slo puede hacer
referencia a variables que hayan sido definidas como parmetros de la funcin.
ENTREGA PROYECTO:
Subir un .zip con todos los archivos del proyecto al link en el sidweb
Slo un miembro del grupo debe subir el avance
Es obligatorio el uso de funciones en la implementacin del proyecto. No se aceptarn proyectos
que no hayan dividido el programa en funciones.
Su proyecto debe tener al menos dos archivos, uno con el programa principal y otro con las
funciones desarrolladas para el mismo.