Documentos de Académico
Documentos de Profesional
Documentos de Cultura
acentos = {
’á’:’a’,
’é’:’e’,
’í’:’i’,
’ó’:’o’,
’ú’:’u’
}
Después, crea una función reemplazar(cadena, diccionario) que devuelva una co-
pia de cadena en la cual todas las letras que aparecen en el diccionario como clave se han
reemplazado por su correspondiente valor de la forma más eficiente posible.
1.2. Traductor
Matrices Página 1
1.3. Frecuencia de palabras
{
’ningun’: 2,
’de’: 10,
’no’: 2,
...
}
Recordad que para separar palabras hay que utilizar el método de cadena split().
En este ejercicio, a diferencia de clase de teoría, se deberán eliminar los símbolos de pun-
tuación (puntos, comas, dos puntos, guión...) y las palabras deben aparecer en el diccionario
en minúsculas y sin acentos (para esta última parte del ejercicio utilizad la función realizada en
el ejercicio anterior, ya que os servirá tanto para reemplazar caracteres, como para eliminarlos).
Matrices Página 2
1.4. Frecuencia de ‘bigramas’
{
(’es’, ’de’): 1,
(’que’, ’la’): 3,
(’no’, ’tiene’): 2,
...
}
Mediante el uso de diccionarios y tuplas, crear un sistema que gestione usuarios y que
tenga el siguiente menú:
1. Añadir usuario
2. Eliminar usuario
3. Listar usuario
4. Acceder
5. Máxima edad
6. Salir
Los datos del usuario serán nombre completo, edad, contraseña e email. La primera opción
añadirá un usuario pidiendo todos los datos de éste; la segunda eliminará un usuario buscado
a partir de su email; la tercera opción imprimirá una lista de usuarios; la cuarta pedirá el email y
el password del usuario, y si éstos coinciden con algún usuario y contraseña introducidos pre-
viamente, deberá aparecer “Acceso autorizado”, o en caso contrario deberá aparecer “Acceso
denegado”; la opción 5 mostrará el nombre de la persona de más edad (si son dos o más con
la misma edad, mostrará el nombre de todas). El programa solo podrá salir en caso de escoger
la opción 6, con lo que se deben gestionar todos los errores y excepciones que puedan afectar
a la ejecución del programa (no hay que comprobar que el email sea correcto, por ejemplo).
Matrices Página 3
1.6. Gestión de usuarios implementado con clases
Vuelve a implementar el ejercicio anterior pero en vez de utilizar tuplas, ahora deberás
utilizar una clase “Usuario” para almacenar la información.
Amplía la clase Usuario del ejercicio anterior implementando tres métodos: un método
es_menor que devuelva verdadero si una persona es menor de edad (menos de 18 años)
o falso en caso contrario, un método nombre_de_pila que devuelva el nombre de pila de un
usuario (el nombre de pila es la primera palabra del atributo donde se guarde el nombre en la
clase, es decir, que no hay nombres de pila compuestos), y un método datos_correo que
devuelva una tupla con el nombre reducido y el email (el nombre reducido solo contiene las dos
primeras palabras del campo nombre, es decir, que si es un nombre compuesto con apellidos
solo estará el nombre compuesto, y si es un nombre simple con apellidos entonces contendrá
el nombre y el primer apellido).
Deseamos gestionar una biblioteca. La biblioteca contiene libros que los socios pueden
tomar prestados un número de días. De cada libro nos interesa, al menos, su título, autor y año
de edición. De cada socio mantenemos su DNI, su nombre y su teléfono. Un socio puede tomar
prestados tres libros. Si un libro tarda más de 10 días en ser devuelto, el socio no podrá sacar
nuevos libros durante un período de tiempo: tres días de penalización por cada día de retraso.
Diseña un programa que permita dar de alta y baja libros y socios y llevar control de los
préstamos y devoluciones de los libros. Cuando un socio sea penalizado, el programa indicará
por pantalla hasta qué fecha está penalizado e impedirá que efectúe nuevos préstamos hasta
entonces.
Matrices Página 4