2. Aules¶
Una escola universitària emmagatzema la informació sobre la disponibilitat d’aules a un fitxer on cada línea correspon a una aula i està formada per l’edifici on es troba l’aula, el nom de l’aula i les hores disponibles, tot separat per punt i coma (;). La codificació de les hores és en el format hora:minuts i sempre corresponen a hores en punt (amb zero minuts). Per exemple:
H;H-0;10:00;12:00;16:00
C;C-12;8:00;10:00;11:00;13:00;15:00
C;C-15;9:00;12:00;15:00
H;H-12;9:00;10:00;11:00;13:00
Per resoldre aquest exercici has de dissenyar les funcions següents i desar-les al fitxer aules.py .
Dissenya la funció
aula_disponible (laula,hora)onlaulaés una llista d’strings corresponent a la informació d’un sol aula i formada per l’edifici a on es troba l’aula, el nom de l’aula i les hores disponibles codificades amb el formathora:minutsi que sempre corresponen a hores en punt, ihoraés un enter corresponent a una hora, retorna el nom de l’aula si l’hora donada està disponible o un string buit en cas contrari.Els següents doctests mostren exemples del que ha de fer la funció:
>>> laula = ['D', 'D9', '11:00', '12:00', '13:00', '14:00', '16:00', '18:00'] >>> aula_disponible(laula,12) 'D9' >>> aula_disponible(laula,18) 'D9' >>> aula_disponible(laula,8) ''
Disposeu de tests al fitxer
test-aula-disponible.txt.Dissenya la funció
disponibilitatque donat el nom d’un fitxer amb informació d’aules i un enter que representa una hora, retorna una llista amb els noms de les aules disponibles per l’hora donada. L’ordre dels elements a la llista serà el mateix que l’ordre d’aparició al fitxer. Aquesta funció ha de cridar a la funció anterioraula_disponible.Per exemple, per un fitxer amb les dades de l’exemple indicat a dalt (
exemple.txt) i l’hora igual a 12, la funció hauria de retornar la llista['H-0', 'C-15']
Disposeu de tests al fitxer
test-disponibilitat.txt.
Disposeu d’una solució al fitxer aules.py.